0

ユーザーが製品の詳細をフレームワークに入力できるようにするアプリを作成しています[PHPで作成しました]。そのフレームワークを使用して、データをjsonにエンコードし、エンコードされたデータをAndroidアプリで取得していますウェブサービス。

しかし、今の問題は、Web 画像の URL をエンコードできないため、json で正しい画像パスを取得できないことです:-

お気に入り:

JSONにエンコードするためにこのリンクを提供しました:

  "imageurl" => "http://www.libpng.org/pub/png/img_png/pnglogo-blk-sml1.png"

しかし、JSON でエンコードされた Web 画像の URL が次のようになっているのを見るたびに:

    "imagepath":"http:\/\/www.libpng.org\/pub\/png\/img_png\/pnglogo-blk-sml1.png"

なぜ私は間違った画像のURLを取得しています....

この問題を解決する方法がわかりません..誰か助けてください....

アルバム.php:

      <?php
/*
*Simple JSON generation from static array
*Author: JSR
*/

include_once './data.php';
$albums = array();

// looping through each album
foreach ($album_tracks as $album) {
$tmp = array();
$tmp["id"] = $album["id"];
$tmp["name"] = $album["album"];
$tmp["description"] = $album["detail"];
$tmp["imagepath"] = $album["imageurl"];
$tmp["songs_count"] = count($album["songs"]);

// push album
array_push($albums, $tmp);
}

//printing json
echo json_encode($albums);
?>

data.php:

        <?php
/*
*Simple JSON generation from static array
*Author: JSR
*/
$album_tracks = array(
1 => array(
"id" => 1,
"album" => "Appetizers",
"detail" => "All appetizers served with mint and tamarind chutneys.",
"imageurl" => "http://www.libpng.org/pub/png/img_png/pnglogo-blk-sml1.png"
)
));
?>
4

1 に答える 1

0

私にとってはうまくいきます

<script>
    var str="http:\/\/www.libpng.org\/pub\/png\/img_png\/pnglogo-blk-sml1.png";
    document.write("<img src='" + str + "'/>");
</script>

json で画像のパスまたは URL を送信するときはいつでも、すべてのスラッシュ、引用符などをエスケープします。したがって、s/\////gis のような正規表現を使用して、これらのエスケープ文字を取り除き、元の URL または場所を取得できます。

于 2013-02-12T05:16:11.033 に答える