使用 Gupshup 的机器人构建工具进行 HTTP POST 调用
Making HTTP POST call using Gupshup's bot builder tool
我正在使用 Gupshup.io 开发一个聊天机器人,想对外部 API 进行 HTTP 调用。
我正在使用此代码:
if(event.message=='hi'){
var contextParam = {
"cobrand": {
"cobrandLogin": "sbCobxxxx",
"cobrandPassword": "xxxxxxx-9f-4307-9d9a-451f3xxxx075",
"locale": "en_US"
}
};
var url = "https://developer.api.yodlee.com:443/ysl/restserver/v1/cobrand/login";
var param = contextParam;
var header = {"Content-Type": "application/x-www-form-urlencoded"};
context.simplehttp.makePost(url,param,header);
return;
}
这给了我这个错误:
TypeError: first argument must be a string or Buffer
如何使用 Gupshup's 在线 IDE 对 API 进行 HTTP POST 调用,该 API 采用 JSON 格式的参数生成器工具?
我来自 Gupshup 团队。
是的,可以使用 Gupshup Bot Builder 进行 POST 调用。这是执行此操作的代码:
if(event.message=='hi'){
var contextParam = {
"cobrand": {
"cobrandLogin": "sbCobxxxx",
"cobrandPassword": "xxxxxxx-9f-4307-9d9a-451f3xxxx075",
"locale": "en_US"
}
};
var url = "https://developer.api.yodlee.com:443/ysl/restserver/v1/cobrand/login";
var param = JSON.stringify(contextParam);
var header = {"Content-Type": "application/json"};
context.simplehttp.makePost(url, param, header);
return;
}
记得在将参数(在本例中为 contextParam)添加为 makePost 方法的参数之前对其进行字符串化。此外,内容类型为 application/json.
我正在使用 Gupshup.io 开发一个聊天机器人,想对外部 API 进行 HTTP 调用。
我正在使用此代码:
if(event.message=='hi'){
var contextParam = {
"cobrand": {
"cobrandLogin": "sbCobxxxx",
"cobrandPassword": "xxxxxxx-9f-4307-9d9a-451f3xxxx075",
"locale": "en_US"
}
};
var url = "https://developer.api.yodlee.com:443/ysl/restserver/v1/cobrand/login";
var param = contextParam;
var header = {"Content-Type": "application/x-www-form-urlencoded"};
context.simplehttp.makePost(url,param,header);
return;
}
这给了我这个错误:
TypeError: first argument must be a string or Buffer
如何使用 Gupshup's 在线 IDE 对 API 进行 HTTP POST 调用,该 API 采用 JSON 格式的参数生成器工具?
我来自 Gupshup 团队。
是的,可以使用 Gupshup Bot Builder 进行 POST 调用。这是执行此操作的代码:
if(event.message=='hi'){
var contextParam = {
"cobrand": {
"cobrandLogin": "sbCobxxxx",
"cobrandPassword": "xxxxxxx-9f-4307-9d9a-451f3xxxx075",
"locale": "en_US"
}
};
var url = "https://developer.api.yodlee.com:443/ysl/restserver/v1/cobrand/login";
var param = JSON.stringify(contextParam);
var header = {"Content-Type": "application/json"};
context.simplehttp.makePost(url, param, header);
return;
}
记得在将参数(在本例中为 contextParam)添加为 makePost 方法的参数之前对其进行字符串化。此外,内容类型为 application/json.