c# - 如何向网络服务发送特殊字符?

标签 c# java android web-services

我正在开发一个 Android 应用程序,用于在数据库中搜索靠近您当前位置的广告商名称。为此,它需要访问公司服务器上的一些 Web 服务。基本上,应用程序将参数发送到 Web 服务,Web 服务返回查询结果。但是,某些广告商名称包含特殊字符,例如“/”或空格。我尝试用 %20 替换空格并且工作正常,但是在发送 "/" 字符时收到错误。我尝试用 %2F 替换它,就像我对空间所做的那样,但仍然不起作用。我应该做什么有什么想法吗?

编辑

我按照建议使用了

String query = URLEncoder.encode("some value", "utf-8");

但现在服务器返回 HTTP 404.11 错误。我想接下来我应该修复的是服务器代码?

最佳答案

您不必手动进行 URL 编码,您可以使用 Android 库,试试这个:

String query = URLEncoder.encode("something of yours / words", "utf-8");
String url = "https://stackoverflow.com/search?q=" + query;

引用:

URL encoding in Android

关于c# - 如何向网络服务发送特殊字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17504258/

相关文章:

java - 我如何指定一个同时匹配 String 和 long 的类型?

java - 如何删除Spring Jpa和Intellij Idea中的数据源警告?

java - 将未实现的接口(interface)转换为对象

android.R.id.empty 在 Xoom/Honeycomb 中损坏了吗?

android - firebase 中的并发事务在读取 dataSnapshot 时导致 null

c# - 使用 Azure Functions OpenAPI 扩展添加只读属性

c# - WPF 中列表框的 SetBinding

android - 如何在本地存储具有复杂结构的 Google Cloud Firestore 数据?

c# - "Accessed JArray values with invalid key value: "id ". Int32 array index expected"收集json时崩溃

c# - SocketException : No such host is known