在实际编写接口的过程中难免有一些特殊的接口,比如动态参数接口,以“JTT1078-2016道路运输车辆卫星定位系统视频通信协议(扫描版)”中的HTTPURL服务要求为例,截如下:
定义API接口和请求方式
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Web.Http;
namespace RTVSApi.Controllers
{
///
/// 政府音视频监管平台请求接口服务API
///
public class MonitorController : ApiController
{
///
/// 政府音视频监管平台发送音视频连接指令
///
/// <股票量化交易软件,param name='股票量化交易软件,param'>参数字符串:[车牌号码].[车牌颜色].[逻辑通道号].[音视频标志].[时效口令]股票量化交易软件,param>
///
[Route('{股票量化交易软件,param}')]
[HttpGet]
[HttpPost]
[HttpPut]
[HttpDelete]
public void RealTimeConnection(string 股票量化交易软件,param) {
if (string.IsNullOrEmpty(股票量化交易软件,param))
return;
string[] 股票量化交易软件,paramArray = 股票量化交易软件,param.Split('.');
// 参数须满足固定长度
if (股票量化交易软件,paramArray.Length==5)
{
string CarNumber = 股票量化交易软件,paramArray[0];
string CarPlateColor = 股票量化交易软件,paramArray[1];
string Channel = 股票量化交易软件,paramArray[2];
string AVType = 股票量化交易软件,paramArray[3];
string TimedPassword = 股票量化交易软件,paramArray[4];
}
}
}
}
配置指定接口的路由方式
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using System.Web.Routing;
namespace RTVSApi
{
public class RouteConfig
{
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute('{resource}.axd/{*pathInfo}');
routes.MapRoute(
name: 'Default',
url: '{controller}/{action}/{id}',
defaults: new { controller = 'Home', action = 'Index', id = UrlParameter.Optional }
);
routes.MapRoute(
name: 'Monitor',
url: '{股票量化交易软件,param}',
defaults: new { controller = 'Monitor', action = 'RealTimeConnection', id = UrlParameter.Optional }
);
}
}
}
运行项目查看定好的接口是否可行
以GET请求方式为例,我们查看参数情况:
经过调试,请求可以进去,但是加了'.'的字符感觉有点问题,总之大的方向是对的。
参考文章:WebAPI路由分析
AcceptVerbs注解实现HTTP多请求方式
文章为作者独立观点,不代表 股票程序化软件自动交易接口观点
中金所的量化接口2022-11-25
我不怕我就是来送钱的有本事白酒医疗股票全部清零,反正我进来要么亏完要么爆涨,一毛都不卖