Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
C
chain33_sdk
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
JIRA
JIRA
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
harrylee2015
chain33_sdk
Commits
a0b5be1e
Commit
a0b5be1e
authored
Apr 18, 2018
by
lihailei
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Manually registered route.
parent
473996bd
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
44 additions
and
189 deletions
+44
-189
common.go
common/common.go
+2
-36
block.go
controllers/block.go
+15
-40
peer.go
controllers/peer.go
+0
-6
tx.go
controllers/tx.go
+17
-29
main.go
main.go
+1
-1
commentsRouter_.go
routers/commentsRouter_.go
+0
-74
router.go
routers/router.go
+9
-3
No files found.
common/common.go
View file @
a0b5be1e
...
...
@@ -12,8 +12,8 @@ var (
chain33_jrpcUrl
=
"http://localhost:8801"
)
func
SetJrpcURL
(
url
string
)
{
chain33_jrpcUrl
=
url
func
SetJrpcURL
(
url
string
)
{
chain33_jrpcUrl
=
url
}
func
GetJrpcURL
()
string
{
return
chain33_jrpcUrl
...
...
@@ -43,40 +43,6 @@ func NewRpcCtx(laddr, methed string, params, res interface{}) *RpcCtx {
func
(
c
*
RpcCtx
)
SetResultCb
(
cb
Callback
)
{
c
.
cb
=
cb
}
//func (c *RpcCtx) Run() {
// rpc, err := jsonrpc.NewJSONClient(c.Addr)
// if err != nil {
// fmt.Fprintln(os.Stderr, err)
// return
// }
//
// err = rpc.Call(c.Method, c.Params, c.Res)
// if err != nil {
// fmt.Fprintln(os.Stderr, err)
// return
// }
//
// // maybe format rpc result
// var result interface{}
// if c.cb != nil {
// result, err = c.cb(c.Res)
// if err != nil {
// fmt.Fprintln(os.Stderr, err)
// return
// }
// } else {
// result = c.Res
// }
//
// data, err := json.MarshalIndent(result, "", " ")
// if err != nil {
// fmt.Fprintln(os.Stderr, err)
// return
// }
//
// fmt.Println(string(data))
//}
func
(
c
*
RpcCtx
)
ReplyData
()
([]
byte
,
error
)
{
rpc
,
err
:=
jsonrpc
.
NewJSONClient
(
c
.
Addr
)
if
err
!=
nil
{
...
...
controllers/block.go
View file @
a0b5be1e
...
...
@@ -18,23 +18,18 @@ type BlockController struct {
// URLMapping ...
func
(
c
*
BlockController
)
URLMapping
()
{
//View last block header
c
.
Mapping
(
"getLastHeader"
,
c
.
g
etLastHeader
)
c
.
Mapping
(
"getLastHeader"
,
c
.
G
etLastHeader
)
//Get hash of block at height
c
.
Mapping
(
"getBlockHashByHeight"
,
c
.
g
etBlockHash
)
c
.
Mapping
(
"getBlockHashByHeight"
,
c
.
G
etBlockHash
)
//View block info by block hash
c
.
Mapping
(
"getBlockViewByHash"
,
c
.
g
etBlockViewByHash
)
c
.
Mapping
(
"getBlockViewByHash"
,
c
.
G
etBlockViewByHash
)
//Get block headers between [start, end]
c
.
Mapping
(
"getBlockHeaders"
,
c
.
g
etBlockHeaders
)
c
.
Mapping
(
"getBlockHeaders"
,
c
.
G
etBlockHeaders
)
// Get block headers between [start, end]
c
.
Mapping
(
"getBlockList"
,
c
.
g
etBlockList
)
c
.
Mapping
(
"getBlockList"
,
c
.
G
etBlockList
)
}
//getLastHeader...
//@Title getLastHeader
//@Description getLastHeader
//@Success 200 {block}
//@Failure 403 :
//@router [get]
func
(
c
*
BlockController
)
getLastHeader
()
{
func
(
c
*
BlockController
)
GetLastHeader
()
{
var
res
jsonrpc
.
Header
ctx
:=
NewRpcCtx
(
GetJrpcURL
(),
"Chain33.GetLastHeader"
,
nil
,
&
res
)
data
,
err
:=
ctx
.
ReplyData
()
...
...
@@ -45,13 +40,8 @@ func (c *BlockController) getLastHeader() {
c
.
Ctx
.
ResponseWriter
.
Write
(
data
)
}
}
//getLastHeader...
//@Title getLastHeader
//@Description getLastHeader
//@Success 200 {block}
//@Failure 400,403:
//@router /getBlockHashByHeight [get]
func
(
c
*
BlockController
)
getBlockHash
()
{
func
(
c
*
BlockController
)
GetBlockHash
()
{
var
res
jsonrpc
.
ReplyHash
height
:=
c
.
Ctx
.
Request
.
Header
.
Get
(
"height"
)
h
,
err
:=
strconv
.
ParseInt
(
height
,
10
,
64
)
...
...
@@ -71,13 +61,8 @@ func (c *BlockController) getBlockHash() {
c
.
Ctx
.
ResponseWriter
.
Write
(
data
)
}
}
//getblockViewByHash...
//@Title getblockViewByHash
//@Description getblockViewByHash
//@Success 200 {blockView}
//@Failure 400,403 :
//@router /getblockViewByHash [get]
func
(
c
*
BlockController
)
getBlockViewByHash
()
{
func
(
c
*
BlockController
)
GetBlockViewByHash
()
{
blockHash
:=
c
.
Ctx
.
Request
.
Header
.
Get
(
"blockHash"
)
if
blockHash
==
""
{
c
.
Ctx
.
ResponseWriter
.
WriteHeader
(
400
)
...
...
@@ -96,13 +81,8 @@ func (c *BlockController) getBlockViewByHash() {
c
.
Ctx
.
ResponseWriter
.
Write
(
data
)
}
}
//getblockHeaders...
//@Title getblockHeaders
//@Description getblockHeaders
//@Success 200 {blockHeader}
//@Failure 400,403 :
//@router /getBlockHeaders [get]
func
(
c
*
BlockController
)
getBlockHeaders
()
{
func
(
c
*
BlockController
)
GetBlockHeaders
()
{
startH
,
errS
:=
strconv
.
ParseInt
(
c
.
Ctx
.
Request
.
Header
.
Get
(
"startH"
),
10
,
64
)
endH
,
errE
:=
strconv
.
ParseInt
(
c
.
Ctx
.
Request
.
Header
.
Get
(
"endH"
),
10
,
64
)
isDetail
,
errD
:=
strconv
.
ParseBool
(
c
.
Ctx
.
Request
.
Header
.
Get
(
"detail"
))
...
...
@@ -125,13 +105,8 @@ func (c *BlockController) getBlockHeaders() {
c
.
Ctx
.
ResponseWriter
.
Write
(
data
)
}
}
//getblockList...
//@Title getblockList
//@Description getblockList
//@Success 200 {blockList}
//@Failure 400,403 :
//@router /getBlockList [get]
func
(
c
*
BlockController
)
getBlockList
()
{
func
(
c
*
BlockController
)
GetBlockList
()
{
startH
,
errS
:=
strconv
.
ParseInt
(
c
.
Ctx
.
Request
.
Header
.
Get
(
"startH"
),
10
,
64
)
endH
,
errE
:=
strconv
.
ParseInt
(
c
.
Ctx
.
Request
.
Header
.
Get
(
"endH"
),
10
,
64
)
...
...
controllers/peer.go
View file @
a0b5be1e
...
...
@@ -16,12 +16,6 @@ func (c *PeerController) URLMapping() {
c
.
Mapping
(
"getPeers"
,
c
.
GetPeers
)
}
//GetOne ...
//@Title GetPeers
//@Description get Peers
//@Success 200 {object} models.Peer
//@Failure 403 :
//@router /getPeers [get]
func
(
c
*
PeerController
)
GetPeers
()
{
var
res
jsonrpc
.
PeerList
ctx
:=
NewRpcCtx
(
GetJrpcURL
(),
"Chain33.GetPeerInfo"
,
nil
,
&
res
)
...
...
controllers/tx.go
View file @
a0b5be1e
...
...
@@ -3,13 +3,13 @@ package controllers
import
(
"github.com/astaxie/beego"
jsonrpc
"gitlab.33.cn/chain33/chain33/rpc"
"gitlab.33.cn/chain33/chain33/types"
.
"gitlab.33.cn/lihailei/chain33_sdk/common"
.
"gitlab.33.cn/lihailei/chain33_sdk/models"
"gitlab.33.cn/chain33/chain33/types"
"strconv"
"io/ioutil"
"encoding/json"
"io/ioutil"
"strconv"
)
// TxController operations for Tx
...
...
@@ -22,25 +22,20 @@ func (c *TxController) URLMapping() {
c
.
Mapping
(
"queryTxByHash"
,
c
.
QueryTxByHash
)
c
.
Mapping
(
"queryTxByAddr"
,
c
.
QueryTxByAddr
)
}
//queryTxByHash...
//@Title queryTxByHash
//@Description queryTxByHash
//@Success 200 {TX}
//@Failure 400,403 :
//@router /queryTxByHash [get]
func
(
c
*
TxController
)
QueryTxByHash
()
{
hash
:=
c
.
Ctx
.
Request
.
Header
.
Get
(
"hash"
)
isRawHex
,
_
:=
strconv
.
ParseBool
(
c
.
Ctx
.
Request
.
Header
.
Get
(
"isRawHex"
))
if
hash
==
""
{
if
hash
==
""
{
c
.
Ctx
.
ResponseWriter
.
WriteHeader
(
400
)
return
}
var
data
[]
byte
var
err
error
var
err
error
if
isRawHex
{
data
,
err
=
queryByHashOutputHex
(
GetJrpcURL
(),
hash
)
data
,
err
=
queryByHashOutputHex
(
GetJrpcURL
(),
hash
)
}
else
{
data
,
err
=
queryByHash
(
GetJrpcURL
(),
hash
)
data
,
err
=
queryByHash
(
GetJrpcURL
(),
hash
)
}
if
err
!=
nil
{
c
.
Data
[
"json"
]
=
err
.
Error
()
...
...
@@ -50,20 +45,14 @@ func (c *TxController) QueryTxByHash() {
}
}
//queryTxByAddr...
//@Title queryTxByAddr
//@Description queryTxByAddr
//@Success 200 {TX}
//@Failure 400,403 :
//@router /queryTxByAddr [get]
func
(
c
*
TxController
)
QueryTxByAddr
()
{
var
params
types
.
ReqAddr
body
,
_
:=
ioutil
.
ReadAll
(
c
.
Ctx
.
Request
.
Body
)
err
:=
json
.
Unmarshal
(
body
,
&
params
)
if
err
!=
nil
{
c
.
Ctx
.
ResponseWriter
.
WriteHeader
(
400
)
return
}
body
,
_
:=
ioutil
.
ReadAll
(
c
.
Ctx
.
Request
.
Body
)
err
:=
json
.
Unmarshal
(
body
,
&
params
)
if
err
!=
nil
{
c
.
Ctx
.
ResponseWriter
.
WriteHeader
(
400
)
return
}
//params := types.ReqAddr{
// Addr: addr,
// Flag: flag,
...
...
@@ -83,7 +72,7 @@ func (c *TxController) QueryTxByAddr() {
}
}
func
queryByHashOutputHex
(
rpcAddr
,
txHash
string
)
([]
byte
,
error
)
{
func
queryByHashOutputHex
(
rpcAddr
,
txHash
string
)
([]
byte
,
error
)
{
params
:=
jsonrpc
.
QueryParm
{
Hash
:
txHash
,
}
...
...
@@ -91,7 +80,7 @@ func queryByHashOutputHex(rpcAddr, txHash string)([]byte,error) {
ctx
:=
NewRpcCtx
(
rpcAddr
,
"Chain33.GetHexTxByHash"
,
params
,
&
res
)
return
ctx
.
ReplyData
()
}
func
queryByHash
(
rpcAddr
,
txHash
string
)
([]
byte
,
error
)
{
func
queryByHash
(
rpcAddr
,
txHash
string
)
([]
byte
,
error
)
{
params
:=
jsonrpc
.
QueryParm
{
Hash
:
txHash
,
}
...
...
@@ -99,4 +88,4 @@ func queryByHash(rpcAddr, txHash string)([]byte,error) {
ctx
:=
NewRpcCtx
(
rpcAddr
,
"Chain33.QueryTransaction"
,
params
,
&
res
)
ctx
.
SetResultCb
(
ParseQueryTxRes
)
return
ctx
.
ReplyData
()
}
\ No newline at end of file
}
main.go
View file @
a0b5be1e
...
...
@@ -12,7 +12,7 @@ func main() {
beego
.
BConfig
.
WebConfig
.
DirectoryIndex
=
true
beego
.
BConfig
.
WebConfig
.
StaticDir
[
"/swagger"
]
=
"swagger"
}
if
beego
.
AppConfig
.
String
(
"jrpcAddr"
)
!=
""
{
if
beego
.
AppConfig
.
String
(
"jrpcAddr"
)
!=
""
{
common
.
SetJrpcURL
(
beego
.
AppConfig
.
String
(
"jrpcAddr"
))
}
beego
.
Run
()
...
...
routers/commentsRouter_.go
deleted
100644 → 0
View file @
473996bd
package
routers
import
(
"github.com/astaxie/beego"
"github.com/astaxie/beego/context/param"
)
func
init
()
{
beego
.
GlobalControllerRouter
[
"gitlab.33.cn/lihailei/chain33_sdk/controllers:BlockController"
]
=
append
(
beego
.
GlobalControllerRouter
[
"gitlab.33.cn/lihailei/chain33_sdk/controllers:BlockController"
],
beego
.
ControllerComments
{
Method
:
"getBlockHash"
,
Router
:
`/getBlockHashByHeight`
,
AllowHTTPMethods
:
[]
string
{
"get"
},
MethodParams
:
param
.
Make
(),
Params
:
nil
})
beego
.
GlobalControllerRouter
[
"gitlab.33.cn/lihailei/chain33_sdk/controllers:BlockController"
]
=
append
(
beego
.
GlobalControllerRouter
[
"gitlab.33.cn/lihailei/chain33_sdk/controllers:BlockController"
],
beego
.
ControllerComments
{
Method
:
"getBlockHeaders"
,
Router
:
`/getBlockHeaders`
,
AllowHTTPMethods
:
[]
string
{
"get"
},
MethodParams
:
param
.
Make
(),
Params
:
nil
})
beego
.
GlobalControllerRouter
[
"gitlab.33.cn/lihailei/chain33_sdk/controllers:BlockController"
]
=
append
(
beego
.
GlobalControllerRouter
[
"gitlab.33.cn/lihailei/chain33_sdk/controllers:BlockController"
],
beego
.
ControllerComments
{
Method
:
"getBlockList"
,
Router
:
`/getBlockList`
,
AllowHTTPMethods
:
[]
string
{
"get"
},
MethodParams
:
param
.
Make
(),
Params
:
nil
})
beego
.
GlobalControllerRouter
[
"gitlab.33.cn/lihailei/chain33_sdk/controllers:BlockController"
]
=
append
(
beego
.
GlobalControllerRouter
[
"gitlab.33.cn/lihailei/chain33_sdk/controllers:BlockController"
],
beego
.
ControllerComments
{
Method
:
"getBlockViewByHash"
,
Router
:
`/getblockViewByHash`
,
AllowHTTPMethods
:
[]
string
{
"get"
},
MethodParams
:
param
.
Make
(),
Params
:
nil
})
beego
.
GlobalControllerRouter
[
"gitlab.33.cn/lihailei/chain33_sdk/controllers:BlockController"
]
=
append
(
beego
.
GlobalControllerRouter
[
"gitlab.33.cn/lihailei/chain33_sdk/controllers:BlockController"
],
beego
.
ControllerComments
{
Method
:
"getLastHeader"
,
Router
:
`[get]`
,
AllowHTTPMethods
:
[]
string
{
"get"
},
MethodParams
:
param
.
Make
(),
Params
:
nil
})
beego
.
GlobalControllerRouter
[
"gitlab.33.cn/lihailei/chain33_sdk/controllers:PeerController"
]
=
append
(
beego
.
GlobalControllerRouter
[
"gitlab.33.cn/lihailei/chain33_sdk/controllers:PeerController"
],
beego
.
ControllerComments
{
Method
:
"GetPeers"
,
Router
:
`/getPeers`
,
AllowHTTPMethods
:
[]
string
{
"get"
},
MethodParams
:
param
.
Make
(),
Params
:
nil
})
beego
.
GlobalControllerRouter
[
"gitlab.33.cn/lihailei/chain33_sdk/controllers:TxController"
]
=
append
(
beego
.
GlobalControllerRouter
[
"gitlab.33.cn/lihailei/chain33_sdk/controllers:TxController"
],
beego
.
ControllerComments
{
Method
:
"QueryTxByAddr"
,
Router
:
`/queryTxByAddr`
,
AllowHTTPMethods
:
[]
string
{
"get"
},
MethodParams
:
param
.
Make
(),
Params
:
nil
})
beego
.
GlobalControllerRouter
[
"gitlab.33.cn/lihailei/chain33_sdk/controllers:TxController"
]
=
append
(
beego
.
GlobalControllerRouter
[
"gitlab.33.cn/lihailei/chain33_sdk/controllers:TxController"
],
beego
.
ControllerComments
{
Method
:
"QueryTxByHash"
,
Router
:
`/queryTxByHash`
,
AllowHTTPMethods
:
[]
string
{
"get"
},
MethodParams
:
param
.
Make
(),
Params
:
nil
})
}
routers/router.go
View file @
a0b5be1e
...
...
@@ -40,7 +40,13 @@ func init() {
ctx
.
Request
.
Header
.
Set
(
"privateKey"
,
"CC38546E9E659D15E6B4893F0AB32A06D103931A8230B0BDE71459D2B27D6944"
)
})
beego
.
AddNamespace
(
ns
)
//beego.Router("/v1/peer",&controllers.PeerController{},)
//beego.Router("/v1/block",&controllers.BlockController{})
//beego.Router("/v1/tx",&controllers.TxController{})
//注册路由
beego
.
Router
(
"/v1/peer/getPeers"
,
&
controllers
.
PeerController
{},
"get:GetPeers"
)
beego
.
Router
(
"/v1/block/getLastHeader"
,
&
controllers
.
BlockController
{},
"get:GetLastHeader"
)
beego
.
Router
(
"/v1/block/getBlockHashByHeight"
,
&
controllers
.
BlockController
{},
"get:GetBlockHash"
)
beego
.
Router
(
"/v1/block/getBlockViewByHash"
,
&
controllers
.
BlockController
{},
"get:GetBlockViewByHash"
)
beego
.
Router
(
"/v1/block/getBlockHeaders"
,
&
controllers
.
BlockController
{},
"get:GetBlockHeaders"
)
beego
.
Router
(
"/v1/block/getBlockList"
,
&
controllers
.
BlockController
{},
"get:GetBlockList"
)
beego
.
Router
(
"/v1/tx/queryTxByHash"
,
&
controllers
.
TxController
{},
"get:QueryTxByHash"
)
beego
.
Router
(
"/v1/tx/queryTxByAddr"
,
&
controllers
.
TxController
{},
"get:QueryTxByAddr"
)
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment