當我向我們的 API 端點提交 HTTP GET 請求時,我收到錯誤消息,指出缺少 CORS 標頭“Access-Control-Allow-Origin”。我們有一個連接到帶有 Angular 7 前端的 .NET API 的 SQL Server 數據庫。這是提交請求的 Angular 服務public VALUES_API_ENDPOINT = 'http://localhost:53273/api/search'; constructor(private httpClient: HttpClient) { } async queryResults(terms: string): Promise<any> { try { const result = await this.httpClient.get(this.VALUES_API_ENDPOINT + '/title/' + terms).toPromise(); return result; } catch (error) { await this.handleError(error); } }后端控制器調用如下所示:[HttpGet][Route("title")]public HttpResponseMessage SearchByTitle(string s){ HttpResponseMessage response; try { List<Regulation> results = search.SearchRegulationByTitle(s); string json = CondensedRegulationsToJson(results); response = Request.CreateResponse(HttpStatusCode.OK); response.Content = new StringContent(json, Encoding.UTF8, "application/json"); } catch (Exception) { response = Request.CreateResponse(HttpStatusCode.InternalServerError); } return response;}我們的 API 配置如下所示:public static void Register(HttpConfiguration config){ // Web API configuration and services // Web API routes config.MapHttpAttributeRoutes(); config.Routes.MapHttpRoute( name: "DefaultApi", routeTemplate: "api/{controller}/{id}", defaults: new { id = RouteParameter.Optional } ); // Enable CORS for the Angular App // NOTE: Since we are running both the frontend and the backend locally, we can trust this origin with all headers and methods (the *). In practice, we would only allow really needed headers and methods config.EnableCors(new EnableCorsAttribute("http://localhost:4200", "*", "*", "*")); // Make JSON the default formatter over XML config.Formatters.JsonFormatter.SerializerSettings.ContractResolver = new CamelCasePropertyNamesContractResolver(); config.Formatters.Remove(config.Formatters.XmlFormatter);}我們應該從數據庫接收數據,但我們只是根據 CORS 屬性被拒絕訪問。
1 回答

慕婉清6462132
TA貢獻1804條經驗 獲得超2個贊
您的 api 網址不正確:
您還有其他/new/
導致 404 錯誤的原因。從 api url中取出/new
,問題應該得到解決。
const result = await this.httpClient.get(this.VALUES_API_ENDPOINT + '/title/' + terms).toPromise();
- 1 回答
- 0 關注
- 106 瀏覽
添加回答
舉報
0/150
提交
取消