我正在开发一个Appengine连接的Android应用程序。我有和端点方法searchBook(String bookName)定义如下:
@ApiMethod(name = "searchBook")
public List<Book> searchBook(@Named("bookName") String bookName) {
//Codes for searching book by setting filter for the received book name
}
我从客户端应用程序调用此方法为:
endoint.searchBook("test book 2").execute();
我的问题是在端点方法中收到的字符串是&#34; test%20book%202&#34;,这不是原始字符串,而是在单词之间有一些额外的字符。为什么会发生这种情况?
答案 0 :(得分:1)
不确定为什么要添加。 可能是,您可以解码收到的字符串,以删除%20等URL编码相关的符号。
String newString = java.net.URLDecoder.decode( bookName, "UTF-8")
http://docs.oracle.com/javase/6/docs/api/java/net/URLDecoder.html
http://icfun.blogspot.in/2009/08/java-urlencode-and-urldecode-options.html