Ich habe gerade Cake auf 3.3 von 3.1 aktualisiert und habe anscheinend einige meiner http Clients
gebrochen.Neuer HTTP-Client inkorrekt Content-Type erzeugt 415 Fehler
Das Problem scheint auf jede Anfrage ohne eine spezifische Content-Type
gesetzt werden.
Zum Beispiel, mir Durchführung dieser Anfrage:
curl -X GET -H "Authorization: Bearer kEnG562yz5bhE9igXf2YTcZ2bu0z" "https://developer.api.autodesk.com/project/v1/hubs"
Mit folgenden http Client
:
$http = new Client([
'headers' => [
'Authorization' => 'Bearer ' . $token->token
]
]);
$response = $http->get('https://developer.api.autodesk.com/project/v1/hubs');
Dies funktioniert auf meinem Testserver Cake\Network\Http\Client
aber auf meinen neu aktualisierten lokalen Server fein mit mit Cake\Http\Client
erhalte ich:
object(Cake\Http\Client\Response) {
[protected] code => '415'
[protected] reasonPhrase => 'Unsupported Media Type'
Wo alle Anfragen mit Content-Type
scheinen ohne Probleme zu funktionieren.
$http = new Client(['headers' => [
'Content-Type' => 'application/json',
'Authorization' => 'Bearer ' . $token->token
]
]);
Funktioniert gut auf beiden Servern.
Ich bin mir ziemlich sicher, dass es die Content-Type
stoppt mich, ich habe ein paar ausprobiert, aber ich stech wirklich im Dunkeln.
Kann mir jemand den Inhaltstyp mitteilen, der standardmäßig von Cake\Network\Http\Client
verwendet wurde oder welchen Inhaltstyp ich verwenden sollte, um eine solche einfache Anfrage zu senden.
Dank
Prost Simon Ich denke du hast recht, dass es nicht 'Content-Type' ist, aber es funktioniert nicht mit' application/json'. Der Anruf war vor dem Update in Ordnung. Etwas hat sich im HTTP-Client geändert, der die Anfrage bricht. –