二次元コードの画像内容Alipayの要求が非常に遅い溶液であります
アリペイ最近開発された小さなプロジェクトのプログラムを、インタフェースを介して、結果を得るために非常に遅い7-10秒に制限され、サーバーへのfile_get_contentsでアクセスをダウンロードした2次元コードを生成するためのもの
imgタグへのアクセスが高速であると、ブラウザのリクエストヘッダを決定すると推定されています
その後、インターネットブラウザをシミュレートするためにカールを使用してアクセスされた解決策を見つけることができます。秒を取ります
<?phpの $ camera_url = 'https://mdgw.alipay.com/wsdk/img?fileid=A*OG3WRZIq5S0AAAAAAAAAAAAAAQAAAQ&bz=am_afts_openhome&zoom=original'; $ camera_base64 = get_head($のcamera_url)。 もし($ camera_base64!= ''){ エコーjson_encode(配列( 'camera_base64' => $ camera_base64)、JSON_UNESCAPED_UNICODE);; } 関数get_head($ URL) { $ヘッダ= [ 'のUser-Agent:Mozillaの/ 5.0する(Windows NT 6.1、Win64の、のx64; RV:45.0)のGecko / 20100101 Firefoxの/ 45.0'、 「受け入れ言語:ZH-CNを、 ZH; Q = 0.8、EN-US; Q = 0.5、EN; Q = 0.3' 、 '受け入れエンコード:GZIP、DEFLATE'、 ]。 $カール= curl_init(); ますcurl_setopt($カール、CURLOPT_URL、$ URL); ますcurl_setopt($カール、CURLOPT_RETURNTRANSFER、真の); ;ますcurl_setopt(trueに$カール、CURLOPT_FOLLOWLOCATION) ますcurl_setopt($カール、CURLOPT_ENCODING、 'GZIP'); ますcurl_setopt($カール、CURLOPT_HTTPHEADER、$ヘッダ); $データ= curl_exec($カール); $コード= curl_getinfo($カール、 CURLINFO_HTTP_CODE); curl_close($カール); ますfile_put_contents( 'aaa.png'、$データ); IFは($ 200のコード==である){// URL形式の画像はBASE64_ENCODE形式に変換! imgBase64Code = $ "データ:画像/ JPEG; Base64で、" BASE64_ENCODE($データ);. リターンの$ imgBase64Code; //画像コンテンツ }他{ リターン'プロフィールが失敗ゲット'; } }