Baru-baru ini, pelanggan perlu melaksanakan fungsi sedemikian Selepas mereka menerbitkan maklumat artikel di platform awam WeChat, mereka juga perlu menerbitkannya semula di tapak web rasmi melaksanakannya di platform awam WeChat Selepas platform menerbitkan artikel, ia boleh diterbitkan ke laman web rasmi pada masa yang sama Melalui penyelidikan, editor mendapati bahawa laman web rasmi platform awam WeChat menyediakan antara muka pengumpulan maklumat alamat asal adalah seperti berikut: https://developers.weixin.qq.com/doc /offiaccount/Asset_Management/Get_materials_list.html
Nama antara muka ialah: Dapatkan bahan kekal , apabila menambah artikel bahan baharu, klik pada maklumat bahan artikel yang disimpan selepas diterbitkan, seperti yang ditunjukkan di bawah:
Hanya bahan artikel yang sedang diterbitkan boleh dikumpulkan jika anda mengklik butang terbitkan dan simpannya ke rekod penerbitan--penerbitan, seperti ditunjukkan di bawah:
Editor di bawah akan menerangkan secara terperinci
Antaramuka :
Kaedah permintaan http:
POS https ://api.weixin.qq.com/cgi-bin/material /batchget_material?access_token=ACCESS_TOKEN
1 Dapatkan ACCESS_TOKEN
public function getAccessToken(){ $info = Db::name('access_token')->order('inputtime desc')->find(); if($info){ $time = time(); $long_time = $time - $info['updatetime']; if($long_time>=$info['expires_in']){ $url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=".$this->appid."&secret=".$this->secret; $res = $this->getJson($url); if(in_array('access_token',$this->DbSy->GetArrElement($res))){ $insert['access_token'] = $res['access_token']; $insert['expires_in'] = $res['expires_in']; $insert['updatetime'] = time(); $up_info = Db::name('access_token')->where('id',$info['id'])->update($insert); if(!$up_info){ return json(['code'=>103,'msg'=>'AccessToken更新失败']); } $AccessToken = $res['access_token']; }else{ return json(['code'=>100,'msg'=>'AccessToken获取失败']); } }else{ $AccessToken = $info['access_token']; } }else{ $url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=".$this->appid."&secret=".$this->secret; $res = $this->getJson($url); if(in_array('access_token',$this->DbSy->GetArrElement($res))){ $insert['access_token'] = $res['access_token']; $insert['expires_in'] = $res['expires_in']; $insert['updatetime'] = time(); $insert['inputtime'] = time(); $up_info = Db::name('access_token')->where('id',$info['id'])->insertGetId($insert); if($up_info){ $AccessToken = $res['access_token']; }else{ return json(['code'=>101,'msg'=>'AccessToken插入失败']); } }else{ return json(['code'=>100,'msg'=>'AccessToken获取失败']); } } return $AccessToken; }
Nota:
Sebelum pengeluaran, anda perlu tambah jadual data: access_token dalam pangkalan data, yang digunakan untuk menyimpan nilai access_token yang diperoleh, kerana tempoh sah setiap nilai access_token yang diperoleh ialah 7200s, untuk mengelakkan pemerolehan berulang nilai access_token.
2 Dapatkan senarai bahan
Selepas mendapat nilai access_token, anda boleh mendapatkan senarai bahan melalui nilai access_token:
public function getArticleList($offset,$type='news',$length=20){ $data = array( 'type'=>$type, 'offset'=>$offset, 'count'=>$length ); $json_data = json_encode($data); $AccessToken = $this->getAccessToken(); $url = "https://api.weixin.qq.com/cgi-bin/material/batchget_material?access_token=".$AccessToken; $res = $this->getJsonData($url,$json_data); return $res; //dump($res); }
Antara mereka:
(1) jenis, iaitu jenis bahan, seperti imej, video, suara, berita
(2) mengimbangi, iaitu nilai semua bahan Kedudukan mengimbangi mula kembali, 0 bermakna kembali daripada bahan pertama
(3) kiraan, bilangan bahan yang dipulangkan, nilainya antara 1 dan 20
Di atas ialah ringkasan editor Bagaimana untuk dapatkan maklumat material artikel yang diterbitkan di platform awam WeChat Harap maaf jika ada kekurangan saya harap ia dapat membantu semua.
Atas ialah kandungan terperinci Realisasikan pengumpulan maklumat artikel yang diterbitkan di WeChat. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!