将数据发布到谷歌联系api

时间:2017-01-11 09:13:21

标签: javascript jquery google-api

我想通过javascript和jquery在google api中创建新的联系人,我可以使用此示例检索联系人:

jQuery.ajax({
    url: "https://www.google.com/m8/feeds/contacts/default/full?alt=json&" +
    "access_token=xs55.CjDOA8lRTs8567657567vXXXX&" +
    "max-results=100&" +
    "v=3.0",
    headers: {
        'Authorization': "Bearer xs55.CjDOA8lRTs8567657567vXXXX",
        'Content-Type': 'application/json'
    },
    method: "GET",
    dataType: 'jsonp',
    success: function (data) {
        console.log(data)
    },
    error: function (data) {
        console.log('error: ');
        console.log(data);
        console.log(data.status);
    }
})      

现在我想要POST数据并在google文档中创建或更新项目总是有错误! :(

例如,在此代码中"对预检请求的响应未通过访问控制检查:否'访问控制 - 允许 - 来源'标头出现在请求的资源上。起源' http://XXX'因此不允许访问。响应的HTTP状态代码为405。"错误发生了:

jQuery.ajax({
    url: "https://www.google.com/m8/feeds/contacts/default/full?alt=json&" +
    "access_token=xs55.CjDOA8lRTs8567657567vXXXX&" +
    "max-results=100&" +
    "v=3.0",
    headers: {
        'Authorization': "Bearer xs55.CjDOA8lRTs8567657567vXXXX",
        'Content-Type': 'application/json'
    },
    method: "POST",
    data: {title: "vvvv", phonenumber: "3333"},
    //dataType: 'jsonp',
    success: function (data) {
        console.log(data)
    },
    error: function (data) {
        console.log('error: ');
        console.log(data);
        console.log(data.status);
    }
})  

whitout jsonp选项如果希望GET某些内容不是POST,则无法使用此选项。

1 个答案:

答案 0 :(得分:0)

你可以试试这个:

data= {title: "vvvv", phonenumber: "3333"};
$.ajax({
    type: "POST",
    data :JSON.stringify(data),
    url: "https://www.google.com/m8/feeds/contacts/default/full?alt=json&" +
         "access_token=xs55.CjDOA8lRTs8567657567vXXXX&" +
         //"max-results=100&" +
         "v=3.0",
    contentType: "application/json"
});