【发布时间】:2020-04-07 23:56:49
【问题描述】:
我正在尝试创建图像上传,但是当我尝试通过 Angular 应用程序上传文件时遇到问题,它不会上传,但是当我尝试通过 Postman 上传图像时,它会上传文件。
我相信它与 Content-Type 有关系,因为当我试图找出问题并在 Postman 中禁用 Content-Type 时,我不再收到相同的错误,并且它工作正常。
这是来自我的 Angular 应用程序的请求标头,它在上传图像时不起作用。
{状态:“错误”,错误:“找不到文件”}
当我在标头中禁用 Content-Type 时,它会上传罚款,但如果我要启用它,我会收到与上述相同的错误。
public upload(file: File)
{
var data = new FormData();
data.append('file', file);
let url = ':api:/assets';
let observable = Observable.create(
(observer) => {
this
.baseApiService
.getHttpClient()
.post(
url,
data,
{
observe: 'response',
}
)
.subscribe(
(response) => {
let data = response.body;
let asset = AssetModel.fromData(data);
observer.next(asset);
observer.complete();
},
(error) => {
observer.error(error);
observer.complete();
}
);
}
);
return observable;
}
【问题讨论】:
-
您能否发布在 Angular 中上传文件的源代码?
-
@AshutoshKS 我已经添加了代码
-
我已在答案中添加了更改。可以试试吗?
-
我看到 Postman 只有 1 个标头,但来自 Angular 的请求有很多标头。我猜其中一个是导致问题的原因:您是否对它们都进行了测试?另外,也许您可以切换到其他客户端或使用浏览器的默认值?
标签: javascript angular api lumen