来自Android App的HTTP POST请求在域上被拒绝但使用IP地址工作

时间:2015-03-17 22:05:23

标签: dns hosting

我正在尝试从我的Android应用程序向我的网络托管服务器上的PHP文件发送HTTP POST请求。

该请求包含来自应用程序的数据,并在服务器上验证或保存,然后PHP文件发送一个JSON响应,该响应由Android设备接收,并采取相应的操作,如登录或注册等。

现在出现的问题是,到目前为止,我还没有付费的DOMAIN而只有HOSTING服务。托管服务给了我一个服务器IP地址来访问我上传的Index.php文件。

所以在我的Android代码中,我编写了要连接的网址http://10x.xxx.xx.xx/index.php/ 并且请求和响应完全正常。

现在我从Godaddy.com购买了一个域名,我将该域名转发到我拥有的服务器IP,当我在浏览器中打开它时,它的工作非常好。所以我将我的Android代码中要求发送请求的IP更改为http://www.sampleurl.com/index.php/

这是我的index.php文件

if (isset($_POST['tag']) && $_POST['tag'] != '') {
// get tag
$tag = $_POST['tag'];
//do other authorization stuff
}
else
 echo "Access Denied";

现在的问题是,当我使用服务器IP地址连接时,它会进入if块并正常运行。但是当我使用域名时,它总是返回拒绝访问。

Logcat显示:

    03-18 02:59:08.780: E/JSON(30892): Access Deniedn
    03-18 02:59:08.780: E/JSON Parser(30892): Error parsing data        org.json.JSONException: Value Access of type java.lang.String cannot be converted to JSONObject
    03-18 02:59:08.780: W/System.err(30892): java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String org.json.JSONObject.getString(java.lang.String)' on a null object reference

现在我不知道在“拒绝访问”之后如何附加字母'n',以及为什么请求没有正确提供。

P.S。我使用转发而不是在域更新NS。这可能导致问题吗?

1 个答案:

答案 0 :(得分:0)

将DNS配置为转发,您的请求后丢失。检查服务器日志。您需要将其设置为type A记录。