recherche

Maison  >  Questions et réponses  >  le corps du texte

Sina SAE php peut obtenir l'avatar WeChat, mais il ne peut pas être obtenu en exécutant le code localement ?

Un environnement standard SAE PHP d'application cloud a été établi sur Sina Cloud. PHP obtient l'image de l'avatar WeChat et la convertit en une chaîne base64 pour l'affichage sur la page Web. Le code s'exécute normalement sur Sina Cloud, mais WAMPSERVER 3.0.6 l'est. utilisé localement. Le code de service démarré par 64 bits signale une erreur. J'ai fermé l'application Sina Cloud et la page de réussite ne peut pas être publiée. Je publierai le code principal ici

.

Les images sur d'autres serveurs peuvent être affichées normalement, seules les images WeChat signalent une erreur sur le serveur local, mais elles s'affichent normalement sur Sina Cloud

On dit sur Internet que c'est la solution parfaite en cas d'échec d'ouverture de flux : la requête HTTP a échoué ! L'article a été essayé et il est complètement inefficace. Je viens d'apprendre PHP. J'espère que mes collègues pourront m'aider. réponse. Merci

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

< /p>

天蓬老师天蓬老师2738 Il y a quelques jours645

répondre à tous(1)je répondrai

  • 我想大声告诉你

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

    Vous n'avez pas réussi à demander le fichier d'avatar WeChat. Il est recommandé d'utiliser curl pour obtenir l'image distante, puis de juger si l'acquisition est réussie en fonction de la valeur de retour. Après succès, utilisez la fonction gd pour traiter l'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 ?>" />

    répondre
    0
  • Annulerrépondre