代码之家  ›  专栏  ›  技术社区  ›  Martin Staufcik

在Azure函数中设置CORS头文件

  •  0
  • Martin Staufcik  · 技术社区  · 6 年前

    在我的Azure函数中,我尝试设置CORS头文件:

    var response = req.CreateResponse(HttpStatusCode.OK);
    response.Content = new ObjectContent<List<RecordEntity>>(data, new JsonMediaTypeFormatter(), "application/json");
    
    response.Headers.Add("Access-Control-Allow-Origin", "*");
    response.Headers.Add("Access-Control-Allow-Methods", "GET, POST, PUT");
    response.Headers.Add("Access-Control-Allow-Headers", "*");
    response.Headers.Add("Access-Control-Allow-Credentials", "true");
    
    return response;
    

    但是,在HTTP响应中,这些头都没有到达客户机,而是从响应中剥离出来。

    我想还有其他设置CORS头的方法,但是找不到它是如何工作的。

    1 回复  |  直到 6 年前
        1
  •  0
  •   Martin Staufcik    6 年前

    Azure门户中的CORS设置位于“功能应用程序-平台功能”下。

    帮助的是从列表中删除所有允许的来源(如链接中所述 https://blogs.msdn.microsoft.com/benjaminperkins/2017/04/12/azure-functions-access-control-allow-credentials-with-cors/ )

    当允许的源列表为空时,最后,手动设置的CORS头将从HTTP响应中的Azure函数发送到客户端,并且不会被剥离。