Angular Imgur api仅在匿名上传图像时返回401状态

Angular Imgur api仅在匿名上传图像时返回401状态,angular,typescript,httpclient,imgur,Angular,Typescript,Httpclient,Imgur,所以我注册了我的应用程序,得到了我的客户id和客户机密。我设置了我的选项,并试图上传一个图像,但我一直得到401状态信息“需要验证”。使用get尝试我的代码,并成功检索到图像。错误只发生在我试图发布图片时”。一直在搜索答案,但每个人都在标题中缺少他们的客户id,正如您所看到的,我得到了我的 uploadImage(formData): Observable<object> { const options = { headers: new HttpHeaders({ Aut

所以我注册了我的应用程序,得到了我的客户id和客户机密。我设置了我的选项,并试图上传一个图像,但我一直得到401状态信息“需要验证”。使用get尝试我的代码,并成功检索到图像。错误只发生在我试图发布图片时”。一直在搜索答案,但每个人都在标题中缺少他们的客户id,正如您所看到的,我得到了我的

uploadImage(formData): Observable<object> {
const options = {
  headers: new HttpHeaders({
    Authorization: 'Client-ID <My_Client_ID>' // string here, replaced it for this question
  }),
  'mimeType': 'multipart/form-data',
  'contentType': false,
  'data': formData
};
return this.httpClient.post('https://api.imgur.com/3/image', options).pipe(map((res) => {
  console.log(res);
  return res;
}));
uploadImage(formData):可观察{
常量选项={
标题:新的HttpHeaders({
授权:'Client ID'//此处为字符串,替换为该问题
}),
“mimeType”:“多部分/表单数据”,
“contentType”:false,
“数据”:formData
};
返回此.httpClient.post('https://api.imgur.com/3/image,选项)。管道(贴图((分辨率)=>{
控制台日志(res);
返回res;
}));

我不确定我还能做什么…我在postman中使用了我的客户端id,它在那里工作。

您正在使用post方法,该方法接受数据作为第二个参数,接受选项作为第三个参数。但是您已经传递了选项来代替数据参数。请改为这样做

uploadImage(formData): Observable<object> {
  const options = {
    headers: new HttpHeaders({
      Authorization: 'Client-ID <My_Client_ID>'
    }),
   'mimeType': 'multipart/form-data',
   'contentType': false,
  };
  return this.httpClient.post('https://api.imgur.com/3/image', formData, options)
  .pipe(tap(console.log));
}
uploadImage(formData):可观察{
常量选项={
标题:新的HttpHeaders({
授权:“客户端ID”
}),
“mimeType”:“多部分/表单数据”,
“contentType”:false,
};
返回此.httpClient.post('https://api.imgur.com/3/image,formData,options)
.管道(水龙头(控制台日志));
}

此外,您还可以使用
点击
操作符执行一个简单的
控制台。log
,这是副作用的目标。

好的,我更改了一些代码,现在我遇到了一个“伪造路径”问题。但是401状态已解决。谢谢