C#WebAPi与WEB跨域问题以及Swagger接口问题

最近我需要自己搭一个框架,保证前后端分离,所以视图跟接口分开处理,接口用的是Swagger,因为WEB跟WEBAPI的端口都不一样,我测试的时候WEB端口:44375 ,WEBAPI的端口:44384;导致我们前端AJAX去调用接口的时候调不通,这里呢!我想说两个问题:

一、Swagger的调用

直接导一个包就可以了:

install-package Swashbuckle

以前的方法可以去看一下这博主的,说的很清楚!

C# 在webapi项目中配置Swagger - alun-chen - 博客园

如果是刚配置的的Swagger访问地址默认不是你想的界面

用这个地址  http://localhost:XXXX/swagger/ui/index#/才可以进界面

二、WEB和WEBAPI跨域的问题;

跨域需要处理的是:

代码放在下面:

    
 1. webAPI.Config  在system.webserver中:


        <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>


2.Global.asax  加在Application_Start ()中

            GlobalConfiguration.Configuration.Formatters.JsonFormatter.SerializerSettings.Converters.Add(
                new Newtonsoft.Json.Converters.IsoDateTimeConverter() { DateTimeFormat = "yyyy/MM/dd HH:mm:ss" }
                );

我处理跨域的时候遇见这样的问题:百度有一篇文章是涉及了Cors  我用Cors出处理没有反应,后面用我这个方法的时候,必须把之前用Cors处理的文件全部处理掉,不然冲突!

之前安装Cors的时候其他都备注了,这个文件没有备注就一直报错,把这个备注就可以了!

 但是后面又取消备注又可以了,没取消之前一直不行!  如果你们遇见可以尝试备注一下!

前端用AJAX去调用Swagger的接口就能调用用成功了!

你们可能会用到的东西:

接口写法模板:

 JS中AJAX模板:

 

 这是这两天我遇见的问题和你们可能想问的问题,第一次搭建一个小框架直接测试用!

希望对你们有帮助!!!!

补充:未能加载文件或程序集“SrvCommon, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null”_zdhlwt2008的博客-CSDN博客_publickeytoken=null

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值