ValueError: Keine JSON-Objekt dekodiert werden konnte

Ich versuche die folgende Beispiel-code aus dem betfair api:

import requests
import json

url="https://api.betfair.com/betting/json-rpc"
header = { 'X-Application' : appKey,  'X-Authentication' : sessionToken, 'content-type' : 'application/json' }
jsonrpc_req='{"jsonrpc": "2.0", "method": "SportsAPING/v1.0/listCompetitions", "params": {"filter":{ "eventTypeIds" : [1]  }}, "id": 1}'
print json.dumps(json.loads(jsonrpc_req), indent=3)
print " "
response = requests.post(url, data=jsonrpc_req, headers=header)
print json.dumps(json.loads(response.text), indent=3)

Ich immer ValueError: No JSON object could be decoded.

  • Bitte zeigen Sie den kompletten traceback, nicht nur die Zeichenfolge der Fehlermeldung. Wie sonst könnten wir wissen, welche mehrere Aufrufe json.loads schief gehen?
  • Auch diese können nicht dein ganzes script, oder würden Sie bekommen NameError: name 'appKey' is not defined bevor Sie überhaupt soweit kommen. Vermutlich wollen Sie nicht, uns Ihren API-key und andere Anmeldeinformationen, aber das bedeutet, dass (wenn es das Letzte ist loads dass andernfalls) werden Sie haben, um uns die Inhalte der response.text.
  • Als seitliche Anmerkung, warum haben Sie manuell codiert jsonrpc_req als JSON-string, anstatt nur die Schaffung eines dict und dann ruft json.dumps drauf??? Die Art und Weise, die Sie getan haben, sollte es genauso gut funktionieren, aber es ist weniger gut lesbar, schwerer zu Debuggen, leichter zu brechen, während der Wartung, etc.
  • hinzugefügte Antwort.text, ich bin neu in json-also im Grunde nur mit dem mitgelieferten Beispiele auf der betfair-Website, wenn Sie mir zeigen bessere Wege, es zu tun, fühlen Sie sich frei.
  • Wenn Ihre eigenen sample-code nicht eigentlich funktionieren, ohne dass änderungen in irgendeiner Form, und jeder, der es ansieht, kann sehen, dass Sie Ihnen die falsche URL... wahrscheinlich das beste, was zu tun ist, Kontaktieren Sie Ihren support. Selbst wenn Sie haben eine Art freies, no-Unterstützung-inklusive Entwickler-Accounts, ich Wette, Sie haben entweder einige Weg, Sie zu Kontaktieren und/oder ein öffentliches forum für die Benutzer gegenseitig helfen. Einer von den beiden wird Ihnen helfen, mehr als zufälligen Menschen auf SO, die haben noch nie davon gehört betfair und können nicht viel mehr tun, als Ihnen helfen, herauszufinden,, dass der betfair-web-service ist gebrochen...
  • Es könnte auch sein, lohnt sich zu überprüfen, ob Ihre "REST" - API (was nicht wirklich RUHE, aber... was auch immer) in api.betfair.com/exchange/betting/rest/v1.0 (siehe hier) funktioniert, auch wenn der JSON-RPC nicht.
  • danke, ich check it out.

Schreibe einen Kommentar