Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
YottaChain
YTBP
提交
7aa0c838
Y
YTBP
项目概览
YottaChain
/
YTBP
通知
0
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
Y
YTBP
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
7aa0c838
编写于
11月 01, 2017
作者:
J
Jonathan Giszczak
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Revise chain API to return http response 200 or 202, as appropriate.
上级
674a5449
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
15 addition
and
15 deletion
+15
-15
plugins/chain_api_plugin/chain_api_plugin.cpp
plugins/chain_api_plugin/chain_api_plugin.cpp
+15
-15
未找到文件。
plugins/chain_api_plugin/chain_api_plugin.cpp
浏览文件 @
7aa0c838
...
@@ -26,13 +26,13 @@ chain_api_plugin::~chain_api_plugin(){}
...
@@ -26,13 +26,13 @@ chain_api_plugin::~chain_api_plugin(){}
void
chain_api_plugin
::
set_program_options
(
options_description
&
,
options_description
&
)
{}
void
chain_api_plugin
::
set_program_options
(
options_description
&
,
options_description
&
)
{}
void
chain_api_plugin
::
plugin_initialize
(
const
variables_map
&
)
{}
void
chain_api_plugin
::
plugin_initialize
(
const
variables_map
&
)
{}
#define CALL(api_name, api_handle, api_namespace, call_name) \
#define CALL(api_name, api_handle, api_namespace, call_name
, http_response_code
) \
{std::string("/v1/" #api_name "/" #call_name), \
{std::string("/v1/" #api_name "/" #call_name), \
[this, api_handle](string, string body, url_response_callback cb) mutable { \
[this, api_handle](string, string body, url_response_callback cb) mutable { \
try { \
try { \
if (body.empty()) body = "{}"; \
if (body.empty()) body = "{}"; \
auto result = api_handle.call_name(fc::json::from_string(body).as<api_namespace::call_name ## _params>()); \
auto result = api_handle.call_name(fc::json::from_string(body).as<api_namespace::call_name ## _params>()); \
cb(
201
, fc::json::to_string(result)); \
cb(
http_response_code
, fc::json::to_string(result)); \
} catch (chain::tx_missing_sigs& e) { \
} catch (chain::tx_missing_sigs& e) { \
error_results results{401, "UnAuthorized", e.to_string()}; \
error_results results{401, "UnAuthorized", e.to_string()}; \
cb(401, fc::json::to_string(results)); \
cb(401, fc::json::to_string(results)); \
...
@@ -53,8 +53,8 @@ void chain_api_plugin::plugin_initialize(const variables_map&) {}
...
@@ -53,8 +53,8 @@ void chain_api_plugin::plugin_initialize(const variables_map&) {}
} \
} \
}}
}}
#define CHAIN_RO_CALL(call_name
) CALL(chain, ro_api, chain_apis::read_only, call_nam
e)
#define CHAIN_RO_CALL(call_name
, http_response_code) CALL(chain, ro_api, chain_apis::read_only, call_name, http_response_cod
e)
#define CHAIN_RW_CALL(call_name
) CALL(chain, rw_api, chain_apis::read_write, call_nam
e)
#define CHAIN_RW_CALL(call_name
, http_response_code) CALL(chain, rw_api, chain_apis::read_write, call_name, http_response_cod
e)
void
chain_api_plugin
::
plugin_startup
()
{
void
chain_api_plugin
::
plugin_startup
()
{
ilog
(
"starting chain_api_plugin"
);
ilog
(
"starting chain_api_plugin"
);
...
@@ -63,17 +63,17 @@ void chain_api_plugin::plugin_startup() {
...
@@ -63,17 +63,17 @@ void chain_api_plugin::plugin_startup() {
auto
rw_api
=
app
().
get_plugin
<
chain_plugin
>
().
get_read_write_api
();
auto
rw_api
=
app
().
get_plugin
<
chain_plugin
>
().
get_read_write_api
();
app
().
get_plugin
<
http_plugin
>
().
add_api
({
app
().
get_plugin
<
http_plugin
>
().
add_api
({
CHAIN_RO_CALL
(
get_info
),
CHAIN_RO_CALL
(
get_info
,
200
),
CHAIN_RO_CALL
(
get_block
),
CHAIN_RO_CALL
(
get_block
,
200
),
CHAIN_RO_CALL
(
get_account
),
CHAIN_RO_CALL
(
get_account
,
200
),
CHAIN_RO_CALL
(
get_code
),
CHAIN_RO_CALL
(
get_code
,
200
),
CHAIN_RO_CALL
(
get_table_rows
),
CHAIN_RO_CALL
(
get_table_rows
,
200
),
CHAIN_RO_CALL
(
abi_json_to_bin
),
CHAIN_RO_CALL
(
abi_json_to_bin
,
200
),
CHAIN_RO_CALL
(
abi_bin_to_json
),
CHAIN_RO_CALL
(
abi_bin_to_json
,
200
),
CHAIN_RO_CALL
(
get_required_keys
),
CHAIN_RO_CALL
(
get_required_keys
,
200
),
CHAIN_RW_CALL
(
push_block
),
CHAIN_RW_CALL
(
push_block
,
202
),
CHAIN_RW_CALL
(
push_transaction
),
CHAIN_RW_CALL
(
push_transaction
,
202
),
CHAIN_RW_CALL
(
push_transactions
)
CHAIN_RW_CALL
(
push_transactions
,
202
)
});
});
}
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录