【问题标题】:how to get the value of special character like #,?,;如何获取特殊字符的值,如#,?,;
【发布时间】:2016-04-12 13:10:30
【问题描述】:

我在 Google Chrome 中使用 Advanced Rest Client 插件。

网址:http://localhost:6721/bgs/ujh/data# 还是数据?或数据;

方法:获取

当我在我的控制器中传递这些数据时,我只得到data 而不是data#data?data;

【问题讨论】:

    标签: web-services rest google-chrome restful-url


    【解决方案1】:

    您应该对数据进行urlencode。 # 例如会变成 %23

    http://localhost:6721/bgs/ujh/data%23
    

    【讨论】:

    • 如果我像 %23 一样对其进行编码,但作为最终用户这样通过检查他/她不知道每个特殊字符的 UTF-8 代码
    【解决方案2】:

    # 字符表示一个片段。它是not sent as part of a HTTP request。它仅在浏览器中用于导航到页面的一部分。这就是为什么你只看到data;正在剥离 URL 的片段组件。

    【讨论】:

    • 正如你所说的 # 用于导航到页面的一部分然后呢?和;
    • 它们本身是无关紧要的。对于? 字符,只有在其后有查询参数时才相关。同样,; 仅在附加信息时才相关。您的图书馆正在砍掉多余的字符,因为它无关紧要。如果您在这些字符后面有相关信息,则不应截断它们。
    • 实际上这不是我的内置库,我正在使用 Advanced Rest Client 将请求发送到 Web 服务,但我希望在我的控制器端使用这些特殊字符,但直到现在我还没有进入我的控制器
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-12-13
    • 1970-01-01
    • 1970-01-01
    • 2023-03-11
    • 1970-01-01
    • 2019-06-16
    • 1970-01-01
    相关资源
    最近更新 更多