cari

Rumah  >  Soal Jawab  >  teks badan

Sina SAE php boleh mendapatkan avatar WeChat, tetapi ia tidak boleh diperoleh dengan menjalankan kod secara tempatan?

Persekitaran standard SAE PHP aplikasi awan telah diwujudkan pada Sina Cloud mendapatkan imej avatar WeChat dan menukarnya menjadi rentetan base64 untuk paparan pada halaman web Kod ini dijalankan secara normal pada Sina Cloud, tetapi WAMPSERVER 3.0.6 digunakan secara tempatan. Kod perkhidmatan yang dimulakan oleh 64bit melaporkan ralat Saya telah menutup aplikasi Sina Cloud dan halaman kejayaan tidak boleh disiarkan di sini

Gambar pada pelayan lain boleh dipaparkan seperti biasa, hanya gambar WeChat melaporkan ralat pada pelayan setempat, tetapi ia dipaparkan secara normal pada Sina Cloud

Dikatakan di Internet bahawa ia adalah penyelesaian yang sempurna untuk gagal membuka strim: Permintaan HTTP gagal! jawapan. Terima kasih

<?php
$pic = 'http://wx.qlogo.cn/mmopen/1MLz0YkS76Fs13hv8TH9oafOPW6kE7Hfv0QNEYvacxw8loRwFLMUsypFVVsiaj10TkqLugcCcKZNFysmJD0PwBQ/0';
$arr = getimagesize($pic);
$pic = "data:{$arr['mime']};base64," .
$url='https://api.myjson.com/bins/w7ou';
$html = file_get_contents($url);
?>
<!DOCTYPE html>
<html lang="en">
<kepala>
  <meta charset="UTF-8">
  <title>Ujian</title>
  <meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=0">
</head>
<badan>
<img src="<?php echo $pic ?>" />
<p><?php echo $html ?></p>
<skrip>
    var t = <?php echo "'$pic'"?>;
    console.log(t);
</skrip>
</badan>
</html>

< /p>

天蓬老师天蓬老师2738 hari yang lalu649

membalas semua(1)saya akan balas

  • 我想大声告诉你

    我想大声告诉你2017-05-16 13:13:20

    Anda telah gagal meminta fail avatar WeChat Adalah disyorkan untuk menggunakan curl untuk mendapatkan imej jauh, dan kemudian menilai sama ada pemerolehan berjaya berdasarkan nilai pulangan, gunakan fungsi gd untuk memproses avatar.

    <?php
    
    $url = 'http://wx.qlogo.cn/mmopen/1MLz0YkS76Fs13hv8TH9oafOPW6kE7Hfv0QNEYvacxw8loRwFLMUsypFVVsiaj10TkqLugcCcKZNFysmJD0PwBQ/0';
    
    $header = array(
        'User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:45.0) Gecko/20100101 Firefox/45.0',
        'Accept-Language: zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3',
        'Accept-Encoding: gzip, deflate',
    );
    
    $curl = curl_init();
    curl_setopt($curl, CURLOPT_URL, $url);
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);
    curl_setopt($curl, CURLOPT_ENCODING, 'gzip');
    curl_setopt($curl, CURLOPT_HTTPHEADER, $header);
    $data = curl_exec($curl);
    $code = curl_getinfo($curl, CURLINFO_HTTP_CODE);
    curl_close($curl);
    
    if ($code == 200) {
        $imgBase64Code = "data:image/jpeg;base64," . base64_encode($data);
    }
    
    ?>
    
    <img src="<?php echo $imgBase64Code ?>" />

    balas
    0
  • Batalbalas