【问题标题】:How to set url params in a POST request?如何在 POST 请求中设置 url 参数?
【发布时间】:2018-12-19 07:12:47
【问题描述】:

我有以下代码。目前有问题的数据是 JSON。但是,有人告诉我这不应该是 JSON 有效负载,而应该是 URL 参数。我正在努力弄清楚如何将其更改为 URL 参数?

request.post({
    url: "https://testardor.jelurida.com/nxt?",
    json: {
        requestType: "sendMoney",
        chain: "2",
        recipient: "ARDOR-XJRL-GPRK-QRUS-C73SE",
        amountNQT: "100000000",
        secretPhrase: "password",
        feeNQT: "1000000",
        deadline: "60"
        }
    ,
    function (error, response, body) {
        if (!error && response.statusCode == 200){
            console.log(body);
        }
    }
});

【问题讨论】:

  • 如果您正在发送 POST 请求,那么您不需要将任何内容作为 URL 参数传递,因为您可以将其作为 JSON 有效负载发送。
  • 据你所知,它应该像上面那样工作?
  • 是的,如果没有任何其他错误,它应该可以工作。
  • 看这个例子:community.apigee.com/questions/20474/… 基本上用正确格式的字符串 ?field1=value1&field2=value2&field3=value3... 和 URL 友好字符编码 URL。
  • 如果我们谈论的是发布请求,那么 url 中就没有任何内容。如果端点期望获取请求,那么一切都在 url 内。什么是端点设置?

标签: javascript node.js express url parameters


【解决方案1】:

也许你可以写一个实用函数,比如,

    function giveURLParams(obj) {
        var string = "?"
        for(var i= 0; i < Object.keys(obj).length;i++){
            if(i){
                string += "&"
            }
            string += Object.keys(obj)[i] + "=" + obj[Object.keys(obj)[i]];
       }
       return string
     }

你可以用你的 json 对象作为这个函数的参数来调用这个函数。

【讨论】:

    猜你喜欢
    • 2018-12-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-01-28
    • 1970-01-01
    • 2011-12-16
    • 2019-07-19
    • 1970-01-01
    相关资源
    最近更新 更多