程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程綜合問答 >> enablecors-webapi跨域 為何不能實現? 有哪些注意事項?

enablecors-webapi跨域 為何不能實現? 有哪些注意事項?

編輯:編程綜合問答
webapi跨域 為何不能實現? 有哪些注意事項?

如題,我按網上給的方法,用System.Web.Http.Cors做webapi跨域的設置,但還是無法跨域訪問,
代碼如下
啟動跨域:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Net.Http.Formatting;
using System.Web.Http;

namespace WebApi
{
    public static class WebApiConfig
    {
        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 }
            );

            //開啟跨域設置
            config.EnableCors();
            //GlobalConfiguration.Configuration.EnableCors();
            //返回json格式的控制
            GlobalConfiguration.Configuration.Formatters.JsonFormatter.MediaTypeMappings.Add(new QueryStringMapping("json", "true", "application/json"));

        }
    }
}

控制器配置


using System.Web.Http;
using System.Web.Http.Cors;

namespace WebApi.Controllers
{
    [EnableCors(origins: "http://localhost:40226", headers: "*", methods: "*")]
    public class MouldController : ApiController
    {
        [ApiVisitFilter]
        public MouldModel Get([FromUri]ParaModel model)
        {
            var mould = new MouldModel();
           // 。。。。。。
            return mould;
        }
    }
}  

網上很多這樣的描述,都說能實現跨域訪問。我也相信微軟不至於特意開發一個System.Web.Http.Cors來騙我們,但為什麼我就沒成功呢?
到底有哪些地方沒注意或做錯了?

最佳回答:


暫時還沒研究過通過dll來實現cors跨域,目前都是通過在config中添加配置實現的跨域

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved