将编码斜杠传递给WebServiceHost服务

时间:2013-10-15 12:27:59

标签: c# encoding url-encoding

我正在托管一项服务,并尝试将其作为参数传递给我...我知道我必须对网址进行编码 - 但是当我在我的方法中设置一个断点时,如果我通过它只会被击中某些编码 - 而不是其他类似的正斜线......

所以......

http://myurl.com:8181/blah

工作正常 - 甚至像(编码冒号)......

http://myurl.com:8181/blah%3A

但如果我尝试传递带编码的斜杠

http://myurl.com:8181/blah%2F

我得到'未找到终点'且我的断点没有被击中......

有人可以帮忙吗?

以下代码......


托管服务......

var instantPrintService = new WebServiceHost(typeof(InstantPrintService), new Uri("http://myurl:8181/"));

instantPrintService.Open();

界面......

[ServiceContract]
public interface IInstantPrint
{
    [OperationContract]
    [WebGet(UriTemplate = "printlabel/{filepath}", ResponseFormat = WebMessageFormat.Json )]
    Response PrintLabel(string filepath);
}

印刷标签方法......

    public Response PrintLabel(string filepath)
    {
        try
        {
            return new Response { Success = true, Message = "Success" };
        }
        catch (Exception ex)
        {
            return new Response { Success = false, Message = ex.ToString() };
        }

    }

0 个答案:

没有答案