“ 谷歌 API 消息 ” : “ 此 API 不支持解析表单编码的输入.".
" Google API message " : " This API does not support parsing form-encoded input. "
我编写了以下JavaScript来在Google中创建任务列表:
postData = {'title':'Netsuite List'};
access_token = 'xxxx';
url = 'https://www.googleapis.com/tasks/v1/users/@me/lists';
headers['Content-type'] = 'application/json';
headers['Authorization'] = 'Bearer ' + access_token;
headers['Content-length'] = 25;
response = $$.requestURL(url, postData, headers, 'POST');
答复说:
{ "error":
{ "errors": [ { "domain": "global", "reason": "parseError", "message": "This API does not support parsing form-encoded input." } ], "code": 400, "message": "This API does not support parsing form-encoded input." }
}
可能的错误是什么?
不起作用
contentType: 'application/json; charset=UTF-8',
试试这个
var headers = { };
headers["Content-Type"] ="application/json ; charset=UTF-8";
//remove to parsing form-encoded input error
data:JSON.stringify( model),
//this use for remove to parse error
例:
$.ajax({
type: 'Post',
url: postUrl,
headers: headers,
dataType: 'json',//not required in some case
data:JSON.stringify( model),
success: function (data, sts) {
alert('success');
},
error: function (err, sts) {
var msg;
}
});
您发送的数据如下:
title=Netsuite%20List
但是Google API等待JSON:
{ "title": "Netsuite List" }
尝试向requestURL
方法提供JSON.stringify()
输出:
postData = JSON.stringify({'title':'Netsuite List'}); // <-- Added JSON.stringify
access_token = 'xxxx';
url = 'https://www.googleapis.com/tasks/v1/users/@me/lists';
headers['Content-type'] = 'application/json';
headers['Authorization'] = 'Bearer ' + access_token;
headers['Content-length'] = 25;
response = $$.requestURL(url, postData, headers, 'POST');
此外,最好绕过您使用$$
对象的文档或源,并检查它如何支持发送 JSON 数据。
jQuery.ajax({
url: "https://www.googleapis.com/tasks/v1/users/@me/lists",
method: "POST",
data: JSON.stringify({ /* your object */ }),
dataType: "json",
beforeSend: (xhr) => {
xhr.setRequestHeader("Content-Type", "application/json");
},
//...
或:
jQuery.ajax({
url: "https://www.googleapis.com/tasks/v1/users/@me/lists",
method: "POST",
data: JSON.stringify({ /* your object */ }),
dataType: "json",
contentType: "application/json",
//...
相关文章:
- 使用gmail-api发送电子邮件错误:此api不支持解析表单编码的输入
- 使用Facebook的javascript api发布多部分/表单数据编码的图像
- 尝试通过 Angular 控制器使用 Google Geocode API 进行地理编码,值未定义
- 谷歌地图API地理编码器,受边界限制
- 从Google Maps JavaScript API V2迁移到V3,编码多边形
- 谷歌地图API地理编码多个位置
- 在谷歌地图 api 中使用邻域类型获取formatted_address - 反向地理编码
- 防止在地理编码器谷歌地图API中循环
- 如何使用谷歌地理编码API和PHP获取用户的当前位置
- 谷歌地图 api v3 对多个地址进行地理编码
- 列出使用 Google 地图地理编码器 API 获取的一组地址
- 地理编码器 API 仅返回街道地址
- 如何对谷歌 API 搜索查询进行编码
- Firebase REST API - 如何设置字符编码
- 谷歌地理编码仅在没有API密钥的情况下运行
- JSON 谷歌地理编码 API 获取国家/地区
- 如何通过谷歌地理编码 API 找到靠近给定地点列表的地方
- 谷歌地理编码 API 状态检查 - OVER_QUERY_LIMIT
- 我们能否让谷歌地图Javascript地理编码API v3在响应中返回自定义标识符
- 通过Google maps api编码地址并延迟结果