JSON ошибка синтаксического анализа: невозможно десериализовать экземпляр `com.keruyun.store.openapi.to.OpenCreateTakeoutOrderTO` из токена START_ARRAY - PullRequest
0 голосов
/ 29 мая 2020

Я получаю следующую ошибку: «JSON ошибка синтаксического анализа: невозможно десериализовать экземпляр com.keruyun.store.openapi.to.OpenCreateTakeoutOrderTO из маркера START_ARRAY; вложенное исключение - com.faster xml .jackson.databind.ex c .MismatchedInputException: невозможно десериализовать экземпляр com.keruyun.store.openapi.to.OpenCreateTakeoutOrderTO из токена START_ARRAY в [Источник: (PushbackInputStream); строка: 1, столбец: 1] "

Я пытаюсь устранить эту ошибку, но не знаю, что делать. Но в Postman это работает. Это потому, что его нет в массиве? Что я могу сделать, чтобы предотвратить эту ошибку? Я делаю это как часть облачной функции в Firebase.

 exports.getCreateOrder = functions.https.onCall((data, context) => {
      console.log('data.paramMap: ', data.paramMap)
      console.log('data.paramMap[0].value: ', data.paramMap[0].value)


      var paramMap = []
      var unixTime = Math.floor(Date.now() / 1000 )
      paramMap.push({key: 'appKey', value: data.paramMap[0].value})
      paramMap.push({key: 'shopIdenty', value: data.paramMap[1].value})
      paramMap.push({key: 'timestamp', value: unixTime})
      paramMap.push({key: 'version', value: data.paramMap[2].value})


      var sign = getSign(paramMap, data.token)

      console.log('sign: ', sign)

      var options = {
          method: 'POST',
          uri: 'https://sg-openapi.keruyun.com/open/v1/takeout/order/create',
          body: {
              "tpOrderId":"123123123131",
              "needInvoice":1,
              "invoiceTitle":"我要发票,这是抬头",
              "createTime":1491906548372,
              "peopleCount":1,
              "remark":"呵呵",
              "shop":{
                  "shopIdenty":810137705,
                  "tpShopId":"810137705",
                  "shopName":"南粉北面高攀路店面"
              },
              "products":[
                  {
                      "name":"土豆丝炒肉肉",
                      "id":298372,
                      "tpId":"24242",
                      "quantity":2,
                      "price":1,
                      "packagePrice":0,
                      "packageQuantity":2,
                      "totalFee":2,
                      "remark":"炒软一点"
                  }]
              ,
              "delivery":{
                  "expectTime":0,
                  "deliveryParty":1,
                  "receiverName":"12345678901",
                  "receiverPhone":"12345678901",
                  "receiverGender":1,
                  "delivererPhone":"13112222222",
                  "delivererAddress":"四川成都",
                  "coordinateType":1,
                  "longitude":88,
                  "latitude":90
              },
              "payment":{
                  "deliveryFee":0,
                  "packageFee":0,
                  "discountFee":0,
                  "platformDiscountFee":0,
                  "shopDiscountFee":0,
                  "shopFee":2,
                  "userFee":2,
                  "serviceFee":0,
                  "subsidies":0,
                  "totalFee":2,
                  "payType":2
              },
              "isPrint": 1,
              "printTemplateTypes":[9]
          },
          json:true,
          qs: {
            appKey: data.paramMap[0].value,
            shopIdenty: data.paramMap[1].value,
            version: data.paramMap[2].value,
            timestamp: unixTime, 
            sign: sign,
          },
        }
        return rp(options).then(body => {
          console.log(body)
          return body
        })
    })
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...