Heim  >  Artikel  >  WeChat-Applet  >  Was ist der Grund für den WeChat-Applet-Fehlercode 47001?

Was ist der Grund für den WeChat-Applet-Fehlercode 47001?

尚
Original
2020-03-26 15:30:419556Durchsuche

Was ist der Grund für den WeChat-Applet-Fehlercode 47001?

Der 47001-Fehler im WeChat-Applet wird durch das falsche Format verursacht.

Lösung für den Datenformatfehler 47001 im WeChat-Applet:

Sehen Sie sich den Fehler an:

Was ist der Grund für den WeChat-Applet-Fehlercode 47001?

Der Hauptgrund ist, dass die angeforderten Daten ist nicht JSON, das durch das Format verursacht wird.

Teilen Sie den Code und die Funktionen, die ich verwendet habe:

Vorlagennachricht senden

public function sendmessage(){
$data=$_POST=json_decode(file_get_contents('php://input'), TRUE);
$access_token=$this->getAccessToken();
$request_url='https://api.weixin.qq.com/cgi-bin/message/wxopen/template/send?access_token='.$access_token;
$request_data=array(
 'touser'=>$data['touser'],//接收者(用户)的 openid
 'template_id'=>$data['template_id'],//所需下发的模板消息的id
 'page'=>$data['page'],//点击模板卡片后的跳转页面
 'form_id'=>$data['form_id'],//表单提交场景下,为 submit 事件带上的 formId;支付场景下,为本次支付的 prepay_id
 'data'=>$data['data'],//"keyword1": {"value": "339208499", "color": "#173177"}
 'emphasis_keyword'=>$data['emphasis_keyword']//模板需要放大的关键词,不填则默认无放大
);
$return=json_decode(https_request($request_url,$request_data,'json'),true);
$this->response($return,'json');
}

Anfrage senden

function https_request($url,$data,$type){
 if($type=='json'){//json $_POST=json_decode(file_get_contents('php://input'), TRUE);
 $headers = array("Content-type: application/json;charset=UTF-8","Accept: application/json","Cache-Control: no-cache", "Pragma: no-cache");
 $data=json_encode($data);
 }
 $curl = curl_init();
 curl_setopt($curl, CURLOPT_URL, $url);
 curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
 curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, FALSE);
 if (!empty($data)){
 curl_setopt($curl, CURLOPT_POST, 1);
 curl_setopt($curl, CURLOPT_POSTFIELDS,$data);
 }
 curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
 curl_setopt( $ch, CURLOPT_HTTPHEADER, $headers ); 
 $output = curl_exec($curl);
 curl_close($curl);
 return $output;
}

Empfohlen: „Mini-Tutorial zur Programmentwicklung

Das obige ist der detaillierte Inhalt vonWas ist der Grund für den WeChat-Applet-Fehlercode 47001?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn