【问题标题】:Can't receive correct answer from Squareup API无法从 Squareup API 收到正确答案
【发布时间】:2015-07-01 12:02:04
【问题描述】:

我正在尝试向 Square 发送消息以创建项目

var postData = {
        "name": "Milkshake",
        "variations": [
                        {
                            "name": "Small",
                            "pricing_type": "FIXED_PRICING",
                            "price_money": {
                                                "currency_code": "USD",
                                                "amount": 400
                                            }
                        }
                    ]}

request.post({
uri:"https://connect.squareup.com/v1/me/items",
headers:{'Authorization': 'Bearer ' + access_token,
             'Accept':        'application/json',
             'Content-Type':  'application/json'},
body: querystring.stringify(postData)
},function(err,res,body){
    console.log(res.statusCode);
    console.log(body); });

但我从 Square 收到这条消息

{"type":"bad_request","message":"invalid json"}

【问题讨论】:

    标签: node.js request square-connect


    【解决方案1】:

    您收到错误是因为您使用了querystring.stringify,它会生成一个 URL 编码的请求正文。您希望 JSON.stringify 生成 JSON 编码的正文。即:

    request.post({
    uri:"https://connect.squareup.com/v1/me/items",
    headers:{'Authorization': 'Bearer ' + access_token,
                 'Accept':        'application/json',
                 'Content-Type':  'application/json'},
    body: JSON.stringify(postData)
    },function(err,res,body){
        console.log(res.statusCode);
        console.log(body); });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-11-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-05-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多