[英]Not found 404 while accessing WCF Rest service (WebGet) when url segment is json string
在我的項目中,我必須將動態Json字符串傳遞給WCF Rest服務web get。
當我傳遞一些字符串,如下所示一切正常。
HTTP://本地主機:58014 / MyService.svc / API /查詢/ somestirng
但當我傳遞json字符串作為url段未找到錯誤發生。
{ “密鑰”: “UserHomePageInfoQuery”, “消息”: “{\\” 用戶名\\ “:\\” usr83 \\ “}”}
這是我的服務運營合同定義
[OperationContract]
[WebGet(UriTemplate = "api/queries/{queryString}",
RequestFormat = WebMessageFormat.Json,
ResponseFormat = WebMessageFormat.Json)]
Response Query(string queryString);
我知道我可以使用POST,但所有服務請求都是查詢
我通過POST為命令提供了另一項服務
[OperationContract]
[WebInvoke(UriTemplate = "api/commands/",
Method = "POST",
RequestFormat = WebMessageFormat.Json,
BodyStyle = WebMessageBodyStyle.Bare,
ResponseFormat = WebMessageFormat.Json)]
Response Execute(Request request)
我在{queryString}參數中使用通配符(*),這意味着“URI的其余部分”
https://msdn.microsoft.com/en-us/library/bb675245.aspx
[OperationContract]
[WebGet(UriTemplate = "api/queries/{*queryString}",
RequestFormat = WebMessageFormat.Json,
ResponseFormat = WebMessageFormat.Json)]
Response Query(string queryString);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.