我正在开发Chrome扩展程序,以通过API更新集线器中的联系人。
我在Chrome扩展程序的$.ajax
中使用了popup.js
方法,但是无法发布它给出Error: 400
的数据
这是我的manifest.json
代码
{
"name": "myext",
"version": "1.0",
"manifest_version": 2,
"description": "update contact",
"browser_action": {
"default_icon": "icon.png",
"default_popup": "popup.html",
"defaul": "run!"
},
"options_ui": {
"page": "settings.html",
"chrome_style": true,
"open_in_tab": true
},
"content_scripts": [ {"css": [ "style.css" ] } ],
"permissions": [ "tabs", "<all_urls>", "storage","cookies", "http://*/*","https://*/*" ]
}
我在
popup.js
中的请求是:var myData = '{"properties":[{ "property": "email", "value": "[email protected]" }, { "property": "firstname", "value": "Adrian" }, ] }';
$.ajax({
type: "POST",
data : JSON.stringify(myData),
url: " http://api.hubapi.com/contacts/v1/contact/createOrUpdate/email/[email protected]/?hapikey=9d5ade00-6367-45be-a2c4-8fd22144aaa4",
contentType: "application/json; charset=utf-8",
success: function(data){
alert('success');
console.log(data)
},
error : function(error) {
alert('error -->' + eval(error));
}
});
最佳答案
有点晚了,但对于那些在同一问题上进行搜索的人-HubSpot不支持CORS
作为安全功能,这意味着您不能使用JQuery
或其他方式直接从浏览器中调用HubSpot API。
您可以考虑将应用程序的这一部分移到服务器端,然后将要保存的数据传递到自己的端点,然后再将其提交给HubSpot。
请在HubSpot上read these docs和discussion。
关于javascript - 无法通过Ajax发布将JSON请求发送到Hubspot通过Chrome扩展程序popup.js创建联系人api,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33541741/