getText.toString() 将符号更改为 Unicode
getText.toString() changes symbols to Unicode
我的应用程序中有一个 edittext 字段,最终用户可以在其中输入他们的电子邮件以进行登录。
当我使用 getText.toString() 获取字段的值时,@ 符号自动转换为 %40 并将传递的值分解为 POST 请求。
我想我缺少一些简单的方法来停止自动转换。
我看到问题在于;
@Field(encoded = false, value = "username") String username
A post 请求参数根据 content-type header 进行编码。您应该将 content-type 设置为 "text/html" 以防止编码。
或者,您也可以使用下面的代码来解码该值。
String result = java.net.URLDecoder.decode(receivedStringValue, "UTF-8");
由于服务器实际要求该字段为 "email",因此当我按照以下方式更改 Retro Fit 时工作正常;
//changed value = "username" to value = "email"
@Field(encoded = false, value = "email") String username
我的应用程序中有一个 edittext 字段,最终用户可以在其中输入他们的电子邮件以进行登录。
当我使用 getText.toString() 获取字段的值时,@ 符号自动转换为 %40 并将传递的值分解为 POST 请求。
我想我缺少一些简单的方法来停止自动转换。 我看到问题在于;
@Field(encoded = false, value = "username") String username
A post 请求参数根据 content-type header 进行编码。您应该将 content-type 设置为 "text/html" 以防止编码。
或者,您也可以使用下面的代码来解码该值。
String result = java.net.URLDecoder.decode(receivedStringValue, "UTF-8");
由于服务器实际要求该字段为 "email",因此当我按照以下方式更改 Retro Fit 时工作正常;
//changed value = "username" to value = "email"
@Field(encoded = false, value = "email") String username