Web API 2-静态服务-URL编码

用户名

我已经使用Web API 2创建了RESTful服务。我可以通过以下途径返回有关库存项目的信息:

http://localhost/api/stockitems/{stockCode}

i.e. http://localhost/api/stockitems/BOMTEST1

我的系统中有包含正斜杠的股票代码,即CA / BASE / SNG / BEECH。自然,由于斜杠,我无法使用标准约定来请求详细信息。

http://localhost/api/stockitems/CA/BASE/SNG/BEECH

我已经尝试了URL编码,但是没有击中控制器

http://localhost/api/stockitems/CA%2FBASE%2FSNG%2FBEECH

我刚拿到404

如何在Web API中处理此问题?

米克医生

您将需要更改您的WebApiConfig。如果您在此地方不使用ID,则可以在配置的该部分中添加通配符({* id}):

config.Routes.MapHttpRoute(
    name: "Default",
    routeTemplate: "api/{controller}/{*id}",
    defaults: new { id = RouteParameter.Optional }
);

我建议为此情况创建一个特定的路由(假设这是您唯一需要允许斜线的情况):

config.Routes.MapHttpRoute(
    name: "StockItems",
    routeTemplate: "api/stockitems/{*id}",
    defaults: new { controller = "StockItems", id = RouteParameter.Optional }
);

您无需使用这种方式对URL进行url编码。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Web API 2-静态服务-URL编码

来自分类Dev

Web API 2 将 URL 编码为 Google API

来自分类Dev

Web API 2的静态对象

来自分类Dev

Web API 2的静态对象

来自分类Dev

我应该使用Azure Web API还是Azure Worker角色来获得繁忙的静态HTTP Web API 2服务?

来自分类Dev

Jersey / Java Web服务中的URL编码

来自分类Dev

Jersey / Java Web服务中的URL编码

来自分类Dev

.NET Web API服务器中的静态变量

来自分类Dev

URL编码Roku上的Web服务调用变量

来自分类Dev

静态Web服务错误

来自分类Dev

发布Web服务-IIS上的Web API 2

来自分类Dev

如何在Web API 2中从静态类使用StructureMap?

来自分类Dev

Web Api 2服务(允许服务与桌面交互)

来自分类Dev

在ASP.Net Web API2中的angularjs服务调用的$ http POST请求期间使用条件URL

来自分类Dev

在ASP.Net Web API2中的angularjs服务调用的$ http POST请求期间使用条件URL

来自分类Dev

静态Web服务中的状态

来自分类Dev

静态Web服务中的状态

来自分类Dev

WEB API的VS WEB服务?

来自分类Dev

Web API 2 REST服务高级数据过滤

来自分类Dev

从代理服务器调用Web API 2

来自分类Dev

Angular 2 服务,如何从 Web API 下载 excel

来自分类Dev

获取当前ASP.NET Web Api 2操作的URL

来自分类Dev

返回 pdf url 作为 web api 2 查询的结果

来自分类Dev

如何将python变量编码为URL和Web服务器响应?

来自分类Dev

如何将python变量编码为URL和Web服务器响应?

来自分类Dev

Web API 2缓存

来自分类Dev

在ASP.NET Web API2 Web服务中实现OAuth访问令牌

来自分类Dev

ASP.NET Web API 2分离Web客户端和Web服务器开发

来自分类Dev

Java Restful Web服务-静态成员变量