V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
lyp111332
V2EX  ›  PHP

请问下为什么安卓客户端可以接收服务器发送的 json, ios 客户端的却不能接收服务器发送的 json

  •  
  •   lyp111332 · Apr 26, 2016 · 3838 views
    This topic created in 3656 days ago, the information mentioned may be changed or developed.
    ios 端使用的是 afnetworking 框架 php 服务器的代码如下
    <?php
    $con = mysql_connect("localhost","root","root");
    if (!$con)
    {
    die('Could not connect: ' . mysql_error());
    }


    mysql_select_db("emp", $con);
    mysql_set_charset('utf8',$con);
    $c = file_get_contents("php://input");
    $de_json = json_decode($c);


    $aa=array();
    $sql= mysql_query("SELECT * FROM tianqi WHERE location='$de_json->location'");
    while($row=mysql_fetch_object($sql))
    $aa = $row;
    echo json_encode($aa);
    exit;
    mysql_close();

    还有就是 ios 客户端可以收到用 jsp 编写的服务器发送的 json 。
    19 replies    2016-04-29 12:39:20 +08:00
    Threezj
        1
    Threezj  
       Apr 26, 2016
    那肯定和服务端无关啊,是你客户端的问题吧
    ixiaozhi
        2
    ixiaozhi  
       Apr 26, 2016
    看到 php 打了一段话,又删了
    lyp111332
        3
    lyp111332  
    OP
       Apr 26, 2016
    @ixiaozhi = =为什么。这个 php 服务器应该是正确的吧= =
    ixiaozhi
        4
    ixiaozhi  
       Apr 26, 2016
    @lyp111332 嗯的,是正确的
    11138
        5
    11138  
       Apr 26, 2016
    什么叫“不能接收服务器发送的 json ”?可以接收发送的 html 吗?首先要判断一下客户端和服务器是否相通,再判断接收的内容是否一致,然后。。。
    xjp
        6
    xjp  
       Apr 26, 2016
    为什么呢? 因为 ios 程序员不行

    既然安卓没问题说服务端是没有问题的吧
    lyp111332
        7
    lyp111332  
    OP
       Apr 26, 2016
    @11138 可以相通的
    lyp111332
        8
    lyp111332  
    OP
       Apr 26, 2016
    @xjp 但是 ios 端那边却可以和 jsp 编写的服务器连接成功 我的 php 服务器和另外一个服务器需要接收和发送的东西都是一样的
    beginor
        9
    beginor  
       Apr 26, 2016 via Android
    差一个题外话,这种查询不怕被 SQL 注入么? location 如果输入 1=1 or 之类的怎么办? 不能能做参数化查询么? 我有强迫症
    11138
        10
    11138  
       Apr 26, 2016
    print "Content-Type: application/json; charset=utf-8\n\n";

    你不如把两者的代码都发出来看看,看看是不是如你所说,发送的东西都一模一样,连头部都一样。
    lyp111332
        11
    lyp111332  
    OP
       Apr 26, 2016
    @beginor 感谢提醒 只是我现在还是初学者 还不懂怎么保护系统漏洞 这上面是我们老师让我们做的一个项目 = =想着把功能实现了先
    SeanChense
        12
    SeanChense  
       Apr 26, 2016
    为什么呢? 因为 iOS 程序员不行。
    可以对两个平台抓包证明。
    kx5d62Jn1J9MjoXP
        13
    kx5d62Jn1J9MjoXP  
       Apr 26, 2016 via Android
    afnetworking 要设置 responseserializer ,或者像楼上说的, response 里要给出 content type
    realpg
        14
    realpg  
    PRO
       Apr 26, 2016
    @lyp111332
    PHP 代码 在 echo 上面加一行
    header('Content-type:text/json');
    XianZaiZhuCe
        15
    XianZaiZhuCe  
       Apr 27, 2016 via iPhone
    客户倒霉
    cevincheung
        16
    cevincheung  
       Apr 27, 2016
    打了一大段话又删了。国内现在的学校还在用 PHP4 做教学范例么? mysql_* 现在还在用?
    lyp111332
        17
    lyp111332  
    OP
       Apr 27, 2016
    @cevincheung 我是在用 php5.4
    lyp111332
        18
    lyp111332  
    OP
       Apr 29, 2016
    @cevincheung 在上大三 不过是自学 php 的。 = = 还有其他能代替 mysql 的吗
    cevincheung
        19
    cevincheung  
       Apr 29, 2016
    @lyp111332 `MySQLi`和`PDO_MYSQL` 5.4 也太老了
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2506 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 48ms · UTC 15:38 · PVG 23:38 · LAX 08:38 · JFK 11:38
    ♥ Do have faith in what you're doing.