Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript AngularJS中的HTTP POST请求返回403_Javascript_Angular_Http_Post - Fatal编程技术网

Javascript AngularJS中的HTTP POST请求返回403

Javascript AngularJS中的HTTP POST请求返回403,javascript,angular,http,post,Javascript,Angular,Http,Post,我正在Angular中构建一个web应用程序。我试图向RESTAPI发送POST请求,但得到403。如果我在cmd中发送一个curl请求,它就可以正常工作 以下是TypeScript中的代码: let header=new HttpHeaders().set('accept','application/json') header=header.set('X-AbiliSense-API-Key','18306df7-3fde-49a1-9bef-6ad7a9d83e7f') t

我正在Angular中构建一个web应用程序。我试图向RESTAPI发送POST请求,但得到403。如果我在cmd中发送一个curl请求,它就可以正常工作

以下是TypeScript中的代码:

   let header=new HttpHeaders().set('accept','application/json')
   header=header.set('X-AbiliSense-API-Key','18306df7-3fde-49a1-9bef-6ad7a9d83e7f')
   this.NewPost=this.http.post('https://api.abilisense.com/v1/api/registerDevice',{header:header});
在cmd中:

curl -X POST "https://api.abilisense.com/v1/api/registerDevice" -H "accept: application/json" -H "X-AbiliSense-API-Key: 18306df7-3fde-49a1-9bef-6ad7a9d83e7f"//this works
例如,的第二个参数是请求主体,而头必须在第三个参数中传递

添加null作为第二个参数,并在第三个参数中使用headers not header:

let headers = ...

this.NewPost = this.http.post('https://api.abilisense.com/v1/api/registerDevice', null, {headers: headers});

它应该是header属性,还是headers属性?@Jacob有什么区别?它是headers属性,您使用的是哪个版本?@Aravind swagger version:0.0.1,看起来您是作为有效负载的一部分发送头,而不是作为HTTP选项的一部分发送头。我不熟悉HTTP服务,但您应该参考API文档。粗略地看,http选项是第三个参数;第二个是帖子主体。