我有一个android登录页面,它将连接localhost url,传递json对象并从服务器接受json对象并烘烤它。但是现在我只收到了关于网址请求的部分内容。我开始知道我们必须在stackoverflow本身的android中使用IP而不是localhost。但是我没有从服务器得到任何回复。它显示为空白。但是,如果我使用外部URL,我会正确地得到它。我已经评论过它上方的网址。如果我解码json并在浏览器中回显它,它工作正常。但是我没有在我的应用程序中获取它。
这是我的Android代码:
public class FeedTask extends AsyncTask<String, Void, String> {
@Override
protected String doInBackground(String... params) {
try {
OkHttpClient client = new OkHttpClient();
RequestBody postData = new FormBody.Builder()
.add("type","json")
.build();
Request request = new Request.Builder()
//.url("http://codemobiles.com/adhoc/feed/youtube_feed.php")
.url("http://192.168.1.100/patronheedV1.1.1/App/Request/abc")
.post(postData)
.build();
Response response = client.newCall(request).execute();
String result = response.body().string();
return result;
} catch (Exception e) {
return null;
}
}
@Override
protected void onPostExecute(String s) {
super.onPostExecute(s);
Toast.makeText(getApplicationContext(), s, Toast.LENGTH_LONG).show();
}
}
这是我的PHP代码:
<?php
class App {
public function Request() {
if ( isset($_POST) ){
$obj = (object) ['aString' => 'Working'];
return json_encode($obj);
} else {
$obj = (object) ['aString' => 'Notworking'];
return json_encode($obj);
}
}
public function fetchRequest() {
if ( isset($_POST['Request']) && isset($_POST['Token']) ){
$user = $_POST['User'];
return $user;
} else {
return NULL;
}
}
}