如何修复XMLHttpRequest无法加载到Ionic上的noodlio-pay?

时间:2016-10-29 13:37:38

标签: javascript angularjs ionic-framework xmlhttprequest

这是我得到的错误?我到处都看了看。我不明白,我对此很新。

  

XMLHttpRequest无法加载   https://noodlio-pay.p.mashape.com/tokens/create。通配符'*'不能   当用于'Access-Control-Allow-Origin'标题时   凭证标志是真的。因此,“http://localhost:8102”来源   不允许访问。 XMLHttpRequest的凭据模式是   由withCredentials属性控制。

     

controllers.js:3763 null

2 个答案:

答案 0 :(得分:0)

你试过Enable cros on ionic吗?并检查允许服务器端的交叉

答案 1 :(得分:0)

我不知道我是如何设法解决它但是有些进展,这就是我做到的方式,现在似乎有效:

在我的app.js中 - > .config我删除了

$httpProvider.defaults.withCredentials = true;

并替换它

var xhr = new XMLHttpRequest(); xhr.open('GET', 'http://localhost:8102/', true); xhr.withCredentials = true; xhr.send(null);

然后工作,但是当这些在控制器中调用的标题再次崩溃时。

// add the following headers for authentication $http.defaults.headers.common['X-Mashape-Key'] = NOODLIO_PAY_API_KEY; $http.defaults.headers.common['Content-Type'] = 'application/x-www-form-urlencoded'; $http.defaults.headers.common['Accept'] = 'application/json';

所以我决定在函数中添加这些标题,并在单击按钮时调用它们。

就像这样

$ scope.headerscheck = function(){

//添加以下标头以进行身份​​验证   $ http.defaults.headers.common ['X-Mashape-Key'] = NOODLIO_PAY_API_KEY;   $ http.defaults.headers.common ['Content-Type'] ='application / x-www-form-urlencoded';   $ http.defaults.headers.common ['Accept'] ='application / json';

}

但现在我不知道如何在不使用刷新的情况下杀死范围函数。