繁体   English   中英

AngularJs和Bluemix QA API无法发出发布请求

[英]AngularJs and Bluemix QA API can't make a post request

我正在尝试将Angular应用程序连接到Bluemix QA API。 所以我有这段代码。

$http({
        method: 'POST',
        url: 'https://gateway.watsonplatform.net/question-and-answer-beta/api/v1/question/healthcare',
        headers: {
            'Content-Type': 'application/json',
            'Authorization':'Basic mytoken',
            'X-SyncTimeout': 30
        },
        data: {
            'question': {
                'questionText': 'Malaria?'
            }
        }
    }).then(function(response){
        $scope.response = JSON.stringify(response);
    });

我的app.js上也有这个

.config([
'$routeProvider',
'$httpProvider',
function($routeProvider, $httpProvider){
    $httpProvider.defaults.headers.common['Access-Control-Allow-Origin'] = '*';
    $httpProvider.defaults.headers.common['Access-Control-Allow-Headers'] = '*';

}])

但是,当我尝试运行该方法时,出现此错误:

Request header field Access-Control-Allow-Origin is not allowed by Access-Control-Allow-Headers.

如果我尝试删除标头,则会在另一个标头中给我一个问题。 那么,有什么想法吗? 还是任何ajax示例? 我知道有一些nodejs示例,但是我想知道是否可以直接连接到api。

之所以得到这个,是因为您试图执行跨站点脚本。 Watson不支持此功能。 您将需要将该请求代理到您的应用程序的后端,然后让您的应用程序将请求漏斗到Watson。

例如,这里有一个与Personality Insights一起使用的应用程序 ,它将请求从Angular到后端再到Watson进行了传递。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM