簡體   English   中英

如何將十進制數傳遞給其余的Web服務

[英]how to pass a decimal number to a rest web service

我想將十進制數(1.23)傳遞給我的WCF-REST Web服務。

我一直收到'資源無法找到'的錯誤。 我希望我遇到IIS的一些安全功能,其中包含點的網址是資源。 有沒有人建議如何將十進制數傳遞給我的網絡服務?

示例網址... http://localhost/restdataservice.svc/echo/2.2

運營合同

[OperationContract]
[WebGet(UriTemplate = "echo/{number}")]
string Echo(string number);

並實施

public string Foo(string number)
{
  return number;
}

您應該查看IIS日志以查看問題。 可能導致此類問題的一件事是UrlScan 它有UrlScan.ini配置文件,您可以在其中找到AllowDotInPath參數。 如果設置為0 ,則拒絕上述請求。 只需將其更改為1 (但不要忘記確保,您不允許通過拒絕URL來允許目錄遍歷)。

您可能需要考慮使用POST請求在請求表示中將該號碼發送到您的資源。

這應該可以正常工作,我不能用類似的基本設置重現這個問題 - 你確定你的echo方法的默認路由設置正確嗎?

我在WCF OData服務器上調用方法時遇到了類似的問題。

問題是十進制參數最后需要'm'。

http://localhost/restdataservice.svc/echo/2.2m

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM