Android:将 URL 解析为没有空格字符的 Web 服务

标签 android url parsing rest illegal-characters

我想做的就是使用类似这样的代码将 URL 字符串发送到我的 RESTFUL Web 服务中

URL someURL= new URL("<a href="http://myWebService:port/service/" rel="noreferrer noopener nofollow">http://myWebService:port/service/</a>"+CharSequence.getText());

一切顺利,直到我在我的 URL 中发现 space 字符错误。我找到了一些关于用 %20 替换空格字符的解决方案,这是我已经用这样的东西定义的:

URL someURL= new URL("<a href="http://myWebService:port/service/" rel="noreferrer noopener nofollow">http://myWebService:port/service/</a>"+CharSequence.getText().replace(" ", "%20"));

再次,一切似乎都很顺利,直到我发现 replace(Char oldChara, Char newChara) 函数只能替换一个空格字符,而不是两个。

举个简单的例子,当我发送带有值 "We won"CharSequence.getText() 时不会出现错误,但是当我将值更改为 “We won the battles” 将出现一个错误,指出有一些非法字符发送到我的 RESTFUL web 服务。

任何形式的回答都会得到我的感谢和崇高的敬意 ~问候~

最佳答案

使用replaceAll而不是 replace
虽然,您确实应该进行适当的 URL 编码。您可以使用 URLEncoder.encode
例如。

关于Android:将 URL 解析为没有空格字符的 Web 服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3260746/

相关文章:

android - 底部 ScrollView 空白内的约束布局?

perl - 如何提取div标签

python - 使用 BeautifulSoup 仅获取 URL 列表的第一个链接

javascript - 自定义非 Google map 上的地理位置

java - Android:将房间数据库链接和同步到在线服务器数据库

android sherlockActionBar 样式 Action 文本

javascript - backbone.js - 映射标准 url 参数 - 使用多个参数

http - 斜杠 ("/") 等同于 HTTP URL 路径部分中的编码斜杠 ("%2F")

php - Mod_Rewrite : Testing URL got indexed in Google - How do I create a proper 301 redirect?

java - 解析antlr3中的mixfix表达式