我正在开发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 docsdiscussion

关于javascript - 无法通过Ajax发布将JSON请求发送到Hubspot通过Chrome扩展程序popup.js创建联系人api,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33541741/

10-09 17:42