皆さんに質問があります。テキストメッセージを送信するためにサードパーティのファイルをロードする機能をウェブサイトに作成しました。array('status'=>0,'message'=>) としました。 ;'送信に成功しました') が文字列として返されます。送信されたテキスト メッセージを削除すると、返された json 文字列を解析できなくなります。通常の文字列と解析できない文字列に違いがある場所
それがBOMヘッダーの理由であるかどうかを検討する必要があります
エンコードするのが最善です返された json 文字列をbase64_encode でエンコードして投稿します
それが BOM ヘッダーの理由であるかどうかを検討する必要があります
返された json 文字列をbase64_encode でエンコードして投稿するのが最善です
解析できない JSON 文字列の Base64 エンコーディングを投稿する必要があります。
解析できない JSON 文字列の Base64 エンコーディングを投稿する必要があります。
文字列?{"status":1,"message":"u5347u7ea7u4e2duff01"} を json 解析ツール http://www.bejson.com/ にコピーします。プロンプト 予期しないトークン ? エラー
解析できない JSON 文字列の Base64 エンコーディングを投稿する必要があります。
?eyJzdGF0dXMiOjEsIm1lc3NhZ2UiOiIxMjM1In0= json を解析できない場合、この文字列は Base64 でエンコードされた文字列ですまだ正しく投稿されていません。
$s = base64_decode('eyJzdGF0dXMiOjEsIm1lc3NhZ2UiOiIxMjM1In0=');print_r(json_decode($s));
stdClass Object( [status] => 1 [message] => 1235)
投稿した json が間違っていないことは説明できます
<?php$s = '{"status":1,"message":"\u5347\u7ea7\u4e2d\uff01"}';$arr = json_decode($s,true);print_r($arr);?>
文字列をコピーする?{"status":1,"message":"u5347u7ea7u4e2duff01"} を json 解析ツールに入力します http://www.bejson.com/ プロンプトを解析できません 予期しないトークン エラー
上の何人かの人の発言を読んだ後、フロントエンドの jquery コードが間違って書かれているように突然感じました
$url = 'http://bbs.csdn.net/topics/391832102';$s = file_get_contents($url);$w = iconv('gbk', 'utf-8', '复制字符串'); //我习惯用 gbk 环境preg_match("/$w(.+})/", $s, $m);echo bin2hex($m[1]), PHP_EOL;echo substr($m[1], 3);
efbbbf7b22737461747573223a312c226d657373616765223a225c75353334375c75376561375c75346532645c7566663031227d{"status":1,"message":"\u5347\u7ea7\u4e2d\uff01"}
さあ、データをプレビューして検証し、リクエストをシミュレートしてください
http://jsonohyeah.com
熱心な回答ありがとうございます。おそらく私が使用しているツールに問題があるかもしれません