Request: Put-Anfrage löst Fehler mit Header-Option aus

Erstellt am 15. Juni 2016  ·  4Kommentare  ·  Quelle: request/request

Ich habe einen Fehler von einer PUT-Anforderung erhalten. Aber ich habe festgestellt, dass es ohne die Header-Option funktionieren kann.
Die Anfrage mit Header-Optionen sieht so aus:

'use strict';
var request = require("request");

request({
  method: 'PUT',
  uri: 'http://v2.openapi.ele.me/restaurant/62028381/order_mode/?consumer_key=0170804777&sig=bc8b56be4f9d33942eb22bd66ab1f2a49eea91f4&timestamp=1465890208',
  body: {
    order_mode: 1
  },
  json: true,
  headers: {
    "Content-Type": "application/x-www-form-urlencoded; charset=UTF-8"
  },
}, (err, response, body) => {
  console.log(body);
});

Und der Fehler ist:

/Users/keller/xfxb/brownie/node_modules/request/lib/querystring.js:44
  return str.replace(/[!'()*]/g, function (c) {
             ^

TypeError: str.replace is not a function
    at Querystring.rfc3986 (/Users/keller/xfxb/brownie/node_modules/request/lib/querystring.js:44:14)
    at Request.json (/Users/keller/xfxb/brownie/node_modules/request/request.js:1201:30)
    at Request.init (/Users/keller/xfxb/brownie/node_modules/request/request.js:421:10)
    at new Request (/Users/keller/xfxb/brownie/node_modules/request/request.js:142:8)
    at request (/Users/keller/xfxb/brownie/node_modules/request/index.js:55:10)

Gibt es ein Problem mit meiner Header-Option oder liegt das Problem am Modul?

stale

Hilfreichster Kommentar

Versuchen Sie form statt body

form: {
  order_mode: 1
},

Alle 4 Kommentare

Versuchen Sie form statt body

form: {
  order_mode: 1
},

Ich bekomme den gleichen Fehler. Es versucht, ein Objekt zu string.replace, wenn Body verwendet wird, aber die Header sind auf FormData festgelegt. Es ist also eine Verwechslung von Datentypen

set ' useQuerystring ': false in reqOptions:

'streng verwenden';
var Anfrage = erfordern ("Anfrage");

Anfrage({
Methode: 'PUT',
uri: 'http://v2.openapi.ele.me/restaurant/62028381/order_mode/?consumer_key=0170804777&sig=bc8b56be4f9d33942eb22bd66ab1f2a49eea91f4&timestamp=1465890208',
Karosserie: {
Auftragsmodus: 1
},
json: stimmt,
useQuerystring: false,
Überschriften: {
"Content-Type": "application/x-www-form-urlencoded; charset=UTF-8"
},
}, (Fehler, Antwort, Text) => {
console.log (Körper);
});

Dieses Problem wurde automatisch als veraltet markiert, da es in letzter Zeit keine Aktivität gab. Es wird geschlossen, wenn keine weiteren Aktivitäten stattfinden. Vielen Dank für Ihre Beiträge.

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen