Я получаю следующую ошибку: «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
})
})