Skip to main content

Map

功能描述

  • 提供仙女座全局坐标
    • 可筛选坐标范围
    • 可筛选持有者
    • 可筛选状态

数据结构 (MongoDB)

land

FieldTypedescription
_idObjectId主键(默认)
coordinatePoint坐标 地图坐标/1000, 比如: {x:109,y:163}, 存储为:(0.109, 0.163)
xInt坐标 x
yInt坐标 y
contractString合约地址
ownerString持有者地址
mint_timeintMint 时间
mint_blockNumberLongMint 区块高度
mint_txStringMint txid
statusint状态: -1.不可购买 0.没有mint(可购买) 1.已经mint
created_atint创建时间
updated_atint更新时间

API 数据格式

land/query

查询条件:

ParamTypedescription
return_typeStringarray / keyvalue
nearJson坐标 [103,222]
[x,y]
distanceInt距离(坐标半径) 配合 near 使用 ;一格的距离大约是 100
geo_boxJson[-125.0, 35.0, -100.0, 40.0]
[x1,y1,x2,y2]
x1,y1 左下角坐标 x2,y2右上角坐标
contract_addressString指定某个合约(多星球时)
owner_addressString持有人地址
statusint状态: -1 不可购买 0 没有mint(可购买) 1已经mint
typeint地块销售类型
lasttimeint时间戳 timestamp , 上次请求返回的 lasttime,可用于请求之后的最新数据

返回结果:

{
"lands": {
"103,103": {
"x": 103,
"y": 103,
"type": 1,
"owner": "0x863ab07eee6f1849293521e8b50565a4420787b1"
},
"103,104": {
"x": 103,
"y": 104,
"type": 1,
"owner": "0x863ab07eee6f1849293521e8b50565a4420787b1"
}
...
}
"lasttime": "1636684369"
}

estate/query

查询条件:

ParamTypedescription
return_typeStringarray / keyvalue
nearJson坐标 [103,222]
[x,y]
distanceInt距离(坐标半径) 配合 near 使用 ;一格的距离大约是 100
geo_boxJson[-125.0, 35.0, -100.0, 40.0]
[x1,y1,x2,y2]
x1,y1 左下角坐标 x2,y2右上角坐标
contract_addressString指定某个合约(多星球时)
owner_addressString持有人地址
statusint状态: -1 不可购买 0 没有mint(可购买) 1已经mint
typeint地块销售类型
lasttimeint时间戳 timestamp , 上次请求返回的 lasttime,可用于请求之后的最新数据

返回结果:

{
"estate": {
"10001": {
"name":"estate",
"description": "estate description",
"tokenURI":"",
"lands": {
"103,103": {
"x": 103,
"y": 103,
"type": 1,
"owner": "0x863ab07eee6f1849293521e8b50565a4420787b1"
},
"103,104": {
"x": 103,
"y": 104,
"type": 1,
"owner": "0x863ab07eee6f1849293521e8b50565a4420787b1"
}
}
}
...
}
"lasttime": "1636684369"
}

缓存方案

A

  • 首次通过 land/query 获取数据,返回数据中带有最后更新的时间戳 [lasttime]
  • 再次请求的时候,传入 [lasttime], 只获取最新变动数据

B

  • 首次通过 land/query 获取数据,返回数据中带有最后更新的时间戳 [lasttime]
  • 通过 land/lasttime 获取数据最后更新时间
  • 比对时间戳,如果数据较老,重新获取数据