从PHP到Android的HTTP响应字符串

时间:2014-03-13 18:04:17

标签: java php android string http

我正在验证数据库中的用户(电子邮件地址和密码)并回显结果。

if($num_rows == 1)
{
    $usertypeid = mysql_fetch_array($query_result);
    echo $usertypeid[0];
}
else
{
    echo "invalid_user";
}

当我在普通浏览器上测试时,它会打印出我想要的内容。当我从android做http请求时,它返回正确的字符串。但它在第一个字节有一些垃圾值,我想这虽然不可见。

HttpResponse httpResponse = httpClient.execute(httpGet);
HttpEntity httpEntity = httpResponse.getEntity();
strResult = EntityUtils.toString(httpEntity);

然后我将strResult与最终字符串进行比较,并检查它是否失败。

if (!strResult.equals(Konstant.HTTP_RESULT_SIGNIN_FAILURE))

因此,当strResult实际上是“invalid_user”时,条件不应该通过。但它过去了。

String value of HTTP Response

Final String value

如果我使用“endsWith()”而不是“equals()”,它可以正常工作。或者如果我使用substring()来消除第一个字节,然后使用equals,它工作正常。

任何人都可以帮助我这里发生的事情吗?

1 个答案:

答案 0 :(得分:1)

您应该将文件编码为UTF-8而不使用BOM。

在Notepad ++上,您可以通过单击“编码”菜单然后单击“转换为UTF-8(无BOM)”选项来执行此操作。