我正在使用Visual Studio 2017构建Angular 5 .NET Core SPA,我正在尝试进行一些 http.post 调用。例如:
@Injectable()
export class ValidateEmailService {
constructor(private http: HttpClient) { }
validateEmail(email: any) {
const headers = new HttpHeaders().set("Content-Type", "application/json");
const url = "https://service/.../Email/Validate";
return this.http.post(url, email, { headers: headers })
.catch(error => Observable.throw(error || "Server error"));
}
}
由于我使用的是本地Web服务器,因此在尝试调用上述API时遇到了跨源问题。我安装了CORS Chrome插件以克服这个问题。不幸的是,我遇到了其他问题:
选项https://service/.../Email/Validate 405(方法不允许)
无法加载https://service/.../Email/Validate:对预检请求的响应未通过访问控制检查:否' Access-Control-Allow-Origin'标头出现在请求的资源上。起源' http://localhost:65040'因此不允许访问。
响应具有HTTP状态代码405
上述API在Postman上运行正常。以上是否有任何解决方案?无论我搜索多少,我都找不到解决方法......
P.S。请不要建议通过C#。我想直接调用API。