我正在尝试更新我现有的fusion表,就像它在给定pythonScripts 中所做的那样。它适用于“GET”方法,但不适用于“PUT”和“POST”方法。我的URL请求函数是:
mport urllib2, urllib, simplejson, sys, httplib
def runRequest(method, url, data=None, headers=None):
request = httplib.HTTPSConnection("www.googleapis.com")
if data and headers:
request.request(method, url, data, headers)
else:
request.request(method, url)
response = request.getresponse()
response = response.read()
return response
我定义了
^{pr2}$getColumns and insertColumn as:
getColumn()方法看起来不错:
GET COLUMNS
200 OK
{ "kind": "fusiontables#columnList",
"totalItems": 28, "items": [ { "kind": "fusiontables#column",
"columnId": 0, "name": "VDC", "type": "STRING",
"formatPattern": "NONE", "validateData": false }}
我从insertColumn()方法得到以下错误:
Insert Column
400 Bad Request
{
"error": {
"errors": [
{
"domain": "global",
"reason": "parseError",
"message": "Parse Error"
}
],
"code": 400,
"message": "Parse Error"
}
}
我认为这是由于runRequest()方法错误或httpconnection工作不正常所致。你有什么建议吗?。有没有别的办法可以解决这个问题?。谢谢。在
错误消息是一个很好的起点。在
如果您实际检查数据输出,您会发现它不是有效的JSON。在
字符串值需要用引号括起来。更好的版本应该是这样的。在
^{pr2}$相关问题 更多 >
编程相关推荐