简体   繁体   English

无法从api(Volley)获取任何响应

[英]Unable to fetch any response from the api (Volley)

I am unable to parse the request from the url http://shikshan.indiansmarthub.co.in/api/menu_t.php?token=SHIK9306488&catt=3 我无法从网址http://shikshan.indiansmarthub.co.in/api/menu_t.php?token=SHIK9306488&catt=3解析请求

My other Api's follows the same structure but I am unable to get any response from this api while integrating it in my app. 我的其他Api遵循相同的结构,但是在将其集成到我的应用程序时无法从此api得到任何响应。

Android Volley Code Android Volley代码

private void doLogin() {
        String url = "http://shikshan.indiansmarthub.co.in/api/menu_t.php?token=SHIK9306488&catt=3";
        StringRequest strReq = new StringRequest(
                Request.Method.POST, url,
                new Response.Listener<String>() {

                    @Override
                    public void onResponse(String response) {

                        Log.e("tag_r", "tag_r");
                        Log.e("tag_res", response);

                    }
                },
                new Response.ErrorListener() {

                    @Override
                    public void onErrorResponse(VolleyError volleyError) {
                        Toast.makeText(Login.this, volleyError.getMessage().toString(), Toast.LENGTH_LONG).show();

                    }
                });

        //Creating a Request Queue
        RequestQueue requestQueue = Volley.newRequestQueue(this);
        //Adding request to the queue
        requestQueue.add(strReq);
    }

Api Code api代码


<?php
include("connection.php");
include("connect.php");
ini_set('error_reporting', E_STRICT);
$token=$_GET['token'];

$cat=$_GET['catt'];
if (!$DEVICE) {
if($token=="SHIK9306488")
{

if($cat==2)
{      

$m1['MenuName']="Attendance";
$m1['Type']="M";

$m2['MenuName']="Attendance Status";
$m2['Type']="A";
// Leave
$m3['MenuName']="Leave";
$m3['Type']="M";

$m4['MenuName']="Apply Leave";
$m4['Type']="A";

$m5['MenuName']="Leave Status";
$m5['Type']="A";
// Assignment
$m6['MenuName']="Assignment";
$m6['Type']="M";

$m7['MenuName']="Upload Assignment";
$m7['Type']="A";

$m8['MenuName']="Download Assignment";
$m8['Type']="A";

// Exit Option
$m9['MenuName']="Exit";
$m9['Type']="M";

$status['Status']="1";

$data1['getMenu']=array($m1,$m2);
$data2['getMenu']=array($m3,$m4,$m5);
$data3['getMenu']=array($m6,$m7,$m8);
$data4['getMenu']=array($m9);
$data5['Status']=array($status);

$main['Status']="1";
$main['data']=array($data1,$data2,$data3,$data4);


echo json_encode($main);

}
else if($cat==3)
{

$m1['MenuName']="Attendance";
$m1['Type']="M";

$m2['MenuName']="Mark Self Attendance";
$m2['Type']="A";

$m9['MenuName']="Mark Student Attendance";
$m9['Type']="A";

$m10['MenuName']="Attendance Status";
$m10['Type']="A";
// Leave
$m3['MenuName']="Leave";
$m3['Type']="M";

$m4['MenuName']="Apply Leave";
$m4['Type']="A";

$m5['MenuName']="Leave Status";
$m5['Type']="A";

$m11['MenuName']="Leave Approval";
$m11['Type']="A";
// assignment
$m6['MenuName']="Assignment";
$m6['Type']="M";

$m7['MenuName']="Upload Assignment";
$m7['Type']="A";

$m8['MenuName']="Download Assignment";
$m8['Type']="A";

//$m12['MenuName']="Assignment Approval";
//$m12['Type']="A";

// Exit Option
$m13['MenuName']="Exit";
$m13['Type']="M";

$status['Status']="1";

$data1['getMenu']=array($m1,$m2,$m9,$m10);
$data2['getMenu']=array($m3,$m4,$m5,$m11);
$data3['getMenu']=array($m6,$m7,$m8);
$data4['getMenu']=array($m13);
$data5['Status']=array($status);


$main['Status']="1";
$main['data']=array($data1,$data2,$data3,$data4);

echo json_encode($main);

}

else
{
 $data=array(response=>"Invalid_token",staus=>0);
 $data2=array($data);
 $myJson=json_encode($data2);
echo $myJson;
}
}
else
{
 $data=array(response=>"Invalid_token",status=>"0");
 $data2=array($data);
 $myJson=json_encode($data2);
    echo $myJson;

}
}
else
{
 echo $useragent;
 echo "hello";
}

?>


The Api is successfully hitting on the post man and the browser but volley on android is unable to hit this api. Api已成功命中邮递员和浏览器,但android上的凌空却无法命中此api。

Response on Post man 对邮递员的回应

{
    "Status": "1",
    "data": [
        {
            "getMenu": [
                {
                    "MenuName": "Attendance",
                    "Type": "M"
                },
                {
                    "MenuName": "Mark Self Attendance",
                    "Type": "A"
                },
                {
                    "MenuName": "Mark Student Attendance",
                    "Type": "A"
                },
                {
                    "MenuName": "Attendance Status",
                    "Type": "A"
                }
            ]
        },
        {
            "getMenu": [
                {
                    "MenuName": "Leave",
                    "Type": "M"
                },
                {
                    "MenuName": "Apply Leave",
                    "Type": "A"
                },
                {
                    "MenuName": "Leave Status",
                    "Type": "A"
                },
                {
                    "MenuName": "Leave Approval",
                    "Type": "A"
                }
            ]
        },
        {
            "getMenu": [
                {
                    "MenuName": "Assignment",
                    "Type": "M"
                },
                {
                    "MenuName": "Upload Assignment",
                    "Type": "A"
                },
                {
                    "MenuName": "Download Assignment",
                    "Type": "A"
                }
            ]
        },
        {
            "getMenu": [
                {
                    "MenuName": "Exit",
                    "Type": "M"
                }
            ]
        }
    ]
}

将请求方法从发布更改为获取

problem with $DEVICE variable in Api Code.that's why return useragent and hello keyword.Your API is working fine in PC but not working on mobile browser. api代码中$DEVICE变量的问题。这就是为什么返回useragent和hello关键字。您的API在PC上工作正常,但在移动浏览器上无法正常工作。

Check Screenshot 检查截图

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM