请问关于c的具体应用场景有哪些?
- 内容介绍
- 文章标签
- 相关推荐
本文共计450个文字,预计阅读时间需要2分钟。
背景:我的项目设置了IIS的请求头允许所有域名都可以跨域访问我的API;
但我想通过程序控制某些域名不能访问,如何在Web.config中实现?
Web.config代码:
xml
背景
我的项目设置了IIS的请求头允许所有域名都可以跨域访问我的API;
但是我又想通过程序控制某些域名不能访问
Web.config代码
<configuration>节点下 <system.webServer>节点
<192.189.1.181/,192.189.1.183/" />
</appSettings>
第二步:新增检查类
APICheckDomainName.cs代码
using System;
using System.Collections.Generic;
using System.Configuration;
using System.Linq;
using System.Net.Http;
using System.Web;
namespace API
{
/// <summary>
/// 检查请求API的域名是否授权,可以检测“域名”或“域名+端口”是否授权
/// </summary>
public class APICheckDomainName
{
/// <summary>
/// 检查请求的域名是否授权
/// </summary>
/// <param name="Request">当前请求</param>
/// <param name="PortCheck">是否检测端口,如果检测端口,配置文件的域名也必须附带端口号,如www.baidu.com:80/</param>
/// <returns>如果未授权返回false,否则true</returns>
public static bool CheckDomainName(HttpRequestMessage Request,bool PortCheck=false)
{
//RequestStatus
bool RequestStatus = false;
string RequestDomainName= string.Empty;
//获取配置
string[] APICheckDomainNameList = ConfigurationManager.AppSettings["APICheckDomainName"].ToString().Split(',');
//协议 {host}:{Port}/";
}
else {
RequestDomainName = $"{scheme}://{host}/";
}
foreach (var item in APICheckDomainNameList)
{
if (item == RequestDomainName)
{
RequestStatus = true;
}
}
return RequestStatus;
}
}
}
第三步:调用
//检查是否授权
if (APICheckDomainName.CheckDomainName(Request)==false)
{
return "未授权!";
}
本文共计450个文字,预计阅读时间需要2分钟。
背景:我的项目设置了IIS的请求头允许所有域名都可以跨域访问我的API;
但我想通过程序控制某些域名不能访问,如何在Web.config中实现?
Web.config代码:
xml
背景
我的项目设置了IIS的请求头允许所有域名都可以跨域访问我的API;
但是我又想通过程序控制某些域名不能访问
Web.config代码
<configuration>节点下 <system.webServer>节点
<192.189.1.181/,192.189.1.183/" />
</appSettings>
第二步:新增检查类
APICheckDomainName.cs代码
using System;
using System.Collections.Generic;
using System.Configuration;
using System.Linq;
using System.Net.Http;
using System.Web;
namespace API
{
/// <summary>
/// 检查请求API的域名是否授权,可以检测“域名”或“域名+端口”是否授权
/// </summary>
public class APICheckDomainName
{
/// <summary>
/// 检查请求的域名是否授权
/// </summary>
/// <param name="Request">当前请求</param>
/// <param name="PortCheck">是否检测端口,如果检测端口,配置文件的域名也必须附带端口号,如www.baidu.com:80/</param>
/// <returns>如果未授权返回false,否则true</returns>
public static bool CheckDomainName(HttpRequestMessage Request,bool PortCheck=false)
{
//RequestStatus
bool RequestStatus = false;
string RequestDomainName= string.Empty;
//获取配置
string[] APICheckDomainNameList = ConfigurationManager.AppSettings["APICheckDomainName"].ToString().Split(',');
//协议 {host}:{Port}/";
}
else {
RequestDomainName = $"{scheme}://{host}/";
}
foreach (var item in APICheckDomainNameList)
{
if (item == RequestDomainName)
{
RequestStatus = true;
}
}
return RequestStatus;
}
}
}
第三步:调用
//检查是否授权
if (APICheckDomainName.CheckDomainName(Request)==false)
{
return "未授权!";
}

