HintergrundPhantom Zeilenumbrüche aus JSON Inhalt
Ich verwende Python fordert Daten an eine Google-Tabelle zu erstellen. Die Anforderung schlägt aufgrund eines unerwarteten Tokens "\ n" fehl. Nach meinem Wissen gibt es keine neuen Zeilen in den JSON-Inhalten, die ich sende. Woher kommen diese Newline-Charaktere? Vielleicht muss ich die Inhaltslänge in meinen Kopfzeilen definieren. Jede Richtung hier wäre hilfreich.
Python-Code
def appendData(self, sheetName, rowData):
rangeName = sheetName+"!A1"
url = self.baseUrl+"/"+self.spreadsheetId+"/values/"+rangeName+":append?valueInputOption=RAW"
requestBody = {
'values': rowData
}
print("\n\nREQUEST BODY\n\n "+str(requestBody))
try:
response, content = self.service.request(url,
method="POST",
headers=self.headers,
body=str(requestBody))
except:
print("Failed appending data")
print("\n\nRESPONSE\n"+str(response))
print("\n\nCONTENT\n"+str(content))
Ausgabe
REQUEST BODY
{'values': [['Timestamp', 'Node 1', '00:13:A2:00:41:04:F1:BC', '', '', 'Node 2', '00:13:A2:00:40:D7:B6:27', '', '', 'Node 3', '00:13:A2:00:40:D7:B6:28', '', '', 'Node 4', '00:13:A2:00:41:04:F1:AB', '', '', 'Node 5', '00:13:A2:00:40:D7:B6:2E', '', ''], ['', 'AD0', 'AD1', 'AD2', 'AD3', 'AD0', 'AD1', 'AD2', 'AD3', 'AD0', 'AD1', 'AD2', 'AD3', 'AD0', 'AD1', 'AD2', 'AD3', 'AD0', 'AD1', 'AD2', 'AD3'], [' '], ['Lower Limit', u'4.9', u'4.9', u'4.9', u'4.9', u'4.640957967', u'4.640957967', u'4.636070381', u'4.636070381', u'0.7797653959', u'0.7797653959', u'0.7797653959', u'0.7797653959', u'-1.1', u'-1.1', u'-1.1', u'-1.1', u'-1.1', u'-1.1', u'-1.1', u'-1.1'], ['Upper Limit', u'5.1', u'5.1', u'5.1', u'5.1', u'5.046236559', u'5.046236559', u'5.041348974', u'5.036461388', u'1.009090909', u'1.009090909', u'1.009090909', u'1.004203324', u'-0.9', u'-0.9', u'-0.9', u'-0.9', u'-0.9', u'-0.9', u'-0.9', u'-0.9'], [' ']]}
RESPONSE
{'status': '400', 'content-length': '437', 'x-xss-protection': '1; mode=block', 'transfer-encoding': 'chunked', 'vary': 'Origin, X-Origin, Referer', 'server': 'ESF', '-content-encoding': 'gzip', 'cache-control': 'private', 'date': 'Wed, 16 Aug 2017 14:58:44 GMT', 'x-frame-options': 'SAMEORIGIN', 'alt-svc': 'quic=":443"; ma=2592000; v="39,38,37,35"', 'content-type': 'application/json; charset=UTF-8'}
CONTENT
{
"error": {
"code": 400,
"message": "Invalid JSON payload received. Unexpected token.\n'], ['Lower Limit', u'4.9', u'4.9', u'4.\n ^",
"errors": [
{
"message": "Invalid JSON payload received. Unexpected token.\n'], ['Lower Limit', u'4.9', u'4.9', u'4.\n ^",
"domain": "global",
"reason": "badRequest"
}
],
"status": "INVALID_ARGUMENT"
}
}
Headers
self.headers = {'content-type': 'application/json', 'accept-encoding': 'gzip, deflate', 'accept': 'application/json', 'user-agent': 'google-api-python-client/1.6.2 (gzip)'}