asp.net 에서 "Access-Control-Allow-Origin" 헤더를 구현하는 방법
asp.net 에서 "Access-Control-Allow-Origin" 헤더를 구현할 수 있습니까?
ASP.NET의 CORS
IIS를 구성할 수 있는 액세스 권한이 없는 경우에도 ASP를 통해 헤더를 추가할 수 있습니다.원본 페이지에 다음 행을 추가하여 NET:
Response.AppendHeader("Access-Control-Allow-Origin", "*");
다른 옵션은 web.config에서 직접 추가하는 것입니다.
<system.webServer>
<httpProtocol>
<customHeaders>
<add name="Access-Control-Allow-Origin" value="http://www.yourSite.com" />
<add name="Access-Control-Allow-Methods" value="GET, POST, PUT, DELETE, OPTIONS"/>
<add name="Access-Control-Allow-Headers" value="Origin, X-Requested-With, Content-Type, Accept" />
</customHeaders>
</httpProtocol>
여기서 이걸 찾았어요
1.Microsoft 설치-패키지화.AsNet.WebApi.코르스
2. WebApiConfig.cs 에 이 코드를 추가합니다.
public static void Register(HttpConfiguration config)
{
// Web API configuration and services
// Web API routes
config.EnableCors();
config.MapHttpAttributeRoutes();
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{id}",
defaults: new { id = RouteParameter.Optional }
);
}
추가할 내용
using System.Web.Http.Cors;
API 컨트롤러(HomeController.cs )에 이 코드를 추가
[EnableCors(origins: "*", headers: "*", methods: "*")]
public class HomeController : ApiController
{
[HttpGet]
[Route("api/Home/test")]
public string test()
{
return "";
}
}
요청한 리소스를 확인하는 HTTP 모듈이 필요할 것이며, CSS 또는 JS일 경우 '*'로 활짝 열려 있지 않으면 요청자 URL로 Access-Control-Allow-Origin 헤더를 태그합니다.
서버에서 CORS 응답 헤더를 구성하는 것은 실제로 선택사항이 아니었습니다.클라이언트 측에서 프록시를 구성해야 합니다.
Sample to Angular - 그래서 프록시 서버 역할을 하기 위해 proxy.conf.json 파일을 만들었습니다.다음은 myproxy.conf.json 파일입니다.
{
"/api": {
"target": "http://localhost:49389",
"secure": true,
"pathRewrite": {
"^/api": "/api"
},
"changeOrigin": true
}
}
패키지와 동일한 디렉토리에 파일을 저장합니다.json 그리고 나서 나는 패키지의 start 명령을 수정했습니다.json 파일은 아래와 같습니다.
"start": "ng serve --proxy-config proxy.conf.json"
이제 앱 구성 요소의 http 호출은 다음과 같습니다.
return this.http.get('/api/customers').map((res: Response) => res.json());
마지막으로 npm start org server --proxy-config proxy.conf.json을 사용하여 실행합니다.
언급URL : https://stackoverflow.com/questions/6516591/how-to-implement-access-control-allow-origin-header-in-asp-net
'programing' 카테고리의 다른 글
Mysql 워크벤치에서 두 모델 간에 테이블을 복사하는 방법은 무엇입니까? (0) | 2023.09.03 |
---|---|
MariaDB 다중 행 삽입 순서 (0) | 2023.09.03 |
Android Studio - 인터넷이 연결되지 않은 Android Emulator WiFi (0) | 2023.08.29 |
MySQL에서 대소문자를 구분하지 않는 REPLACE? (0) | 2023.08.29 |
봄 트랜잭션 필수 대 REQUESTERS_NEW : 롤백 트랜잭션 (0) | 2023.08.29 |