Javascript Google Chrome阻止我的应用程序发出post请求,需要帮助添加标题

Javascript Google Chrome阻止我的应用程序发出post请求,需要帮助添加标题,javascript,angularjs,api,post,cors,Javascript,Angularjs,Api,Post,Cors,一般来说,我对AngularJS、API和编码都很陌生。我创建了这个AngularJS应用程序,让用户向我创建的API发出post请求。它是一个简单的括号检查器,一切正常,除了我必须在我的chrome浏览器中激活CORS插件才能使其正常工作,这是我不能要求用户做的 我很确定有办法解决这个问题,但我真的不明白。我想我需要在我的http请求代码中添加一些头,对吗 下面是我的angularjs服务,它发出请求: function ApiService($http) { // API = '//

一般来说,我对AngularJS、API和编码都很陌生。我创建了这个AngularJS应用程序,让用户向我创建的API发出post请求。它是一个简单的括号检查器,一切正常,除了我必须在我的chrome浏览器中激活CORS插件才能使其正常工作,这是我不能要求用户做的

我很确定有办法解决这个问题,但我真的不明白。我想我需要在我的http请求代码中添加一些头,对吗

下面是我的angularjs服务,它发出请求:

function ApiService($http) {
    // API = '//localhost:3000/parentheses';
    API = 'https://parentheses-api.herokuapp.com/parentheses';
    this.getUser = (entry) => {
        // console.log(this.entry);
        return $http
            .post(API, { string: entry} )
            .then(function (response) {
                // console.log(response.data);
                return response.data;
            }, function (reason) {
                // error
            })
        // this.entry = "";
    };
};

angular
    .module('app')
    .service('ApiService', ApiService);
我想这是我应该添加标题的地方。但具体是如何和怎样的呢?我现在真的不明白

下面是包含两个文件夹的完整项目,一个包含API,另一个包含上面代码所在的应用程序ApiService.js


任何帮助都将不胜感激

如果您请求的API是作为前端从不同域提供的,那么您的API后端将需要使用正确的CORS头进行响应。看看:

访问控制允许来源:*

这告诉浏览器允许从任何来源请求代码来访问API


或者,使用Access Control Allow Origin:告诉浏览器只允许指定的源访问您的API。

如果可以通过在客户端添加标题绕过CORS,那么将CORS放在首位将是徒劳的。这些头需要添加到服务器的回复中,而不是请求中。好的,让我在我的API上而不是我的前端上尝试一下,明白了!如果我没有成功,我会发布一个新问题,这次分享我的API:非常感谢你的帮助!