1

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: 最初の引数は文字列またはバッファでなければなりません

ボット ビルダー ツールでGupshup のオンライン IDEを使用して、JSON 形式のパラメーターを受け取る API への HTTP POST 呼び出しを行うにはどうすればよいですか?

4

1 に答える 1

4

私は 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;
}

makePost メソッドに引数として追加する前に、パラメーター (この場合は contextParam) を文字列化することを忘れないでください。また、コンテンツ タイプは application/json です。

于 2016-10-25T06:13:44.283 に答える