要设置代理以在本地提供使用Windows身份验证的Web API的Angular 8应用程序,您需要进行以下步骤:
proxy.conf.json的文件,并将以下内容添加到文件中:{
"/api/*": {
"target": "http://localhost:your-api-port",
"secure": false,
"changeOrigin": true,
"logLevel": "debug",
"pathRewrite": {
"^/api": ""
},
"headers": {
"Authorization": "Negotiate"
}
}
}
请确保将your-api-port替换为您实际的Web API端口号。此配置将把所有以/api开头的请求转发到指定的目标。
angular.json文件中,找到您的项目配置,然后将proxyConfig属性设置为proxy.conf.json文件的路径,如下所示:"architect": {
"serve": {
"options": {
"proxyConfig": "proxy.conf.json"
},
...
},
...
}
app.module.ts文件中,导入HttpClientModule:import { HttpClientModule } from '@angular/common/http';
app.module.ts文件的imports数组中,将HttpClientModule添加为导入模块:@NgModule({
declarations: [
...
],
imports: [
...
HttpClientModule
],
...
})
export class AppModule { }
HttpClient来进行API请求:import { Injectable } from '@angular/core';
import { HttpClient } from '@angular/common/http';
@Injectable({
providedIn: 'root'
})
export class ApiService {
constructor(private http: HttpClient) { }
getApiData() {
return this.http.get('/api/your-api-endpoint'); // 替换为您的API端点
}
}
这样,您的Angular应用程序将通过代理转发所有以/api开头的请求,并在请求头中添加Windows身份验证。