1.Enable-Cross-Origin-Request
Trong file webconfig : part<httpProtocol>
<customHeaders>
<add name="Access-Control-Allow-Origin" value="*" />
<add name="Access-Control-Allow-Headers" value="Content-Type" />
<add name="Access-Control-Allow-Methods" value="GET, POST, PUT, DELETE, OPTIONS" />
</customHeaders>
</httpProtocol>
Cài gói Microsoft.AspNet.WebApi.Cors vào dự án.
thêm vào hàm register trong webapiconfig: trước cấu hình formatter.
var cors = new EnableCorsAttribute("http://localhost:18479", "*", "*");
config.EnableCors(cors);
Vào file WebApiApplication thêm vào:
protected void Application_BeginRequest()
{
if (Request.Headers.AllKeys.Contains("Origin") && Request.HttpMethod == "OPTIONS")
{
Response.Flush();
}
}
Done !!!
2. Cấu hình WebApi trả về dạng Json thay vì mặc định trả về XML.
File WebApiConfig hàm register thêm vào trước cấu hình authentication:
config.Formatters.Clear();
config.Formatters.Add(new JsonMediaTypeFormatter());
cấu hình có 1 câu:
- câu 1: xóa bỏ mặc định tức là không dùng thằng XML formatter nữa.
- câu 2. thêm Json thay vào chỗ trống.
3. Cấu hình dùng session trong WebAPI
Trong file global.asaxpublic override void Init()Trong ApiController khi truy xuất Session thông qua hàm
{
this.PostAuthenticateRequest += MvcApplication_PostAuthenticateRequest;
base.Init();
}
void MvcApplication_PostAuthenticateRequest(object sender, EventArgs e)
{
System.Web.HttpContext.Current.SetSessionStateBehavior(
SessionStateBehavior.Required);
}
HttpContext.Current.SessionBài viết sẽ được tiếp tục cập nhật khi có trick mới.
Thân! and To be Continue.
0 blogger:
Đăng nhận xét