国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

Heim WeChat-Applet WeChat-Entwicklung Bei der automatischen Beantwortung von WeChat-Nachrichten sind in der PHP-WeChat-Entwicklung Probleme aufgetreten

Bei der automatischen Beantwortung von WeChat-Nachrichten sind in der PHP-WeChat-Entwicklung Probleme aufgetreten

Mar 21, 2017 pm 04:10 PM

In diesem Artikel geht es um die Fallstricke, auf die Sie bei der automatischen Beantwortung von WeChat-Nachrichten sto?en. Sie treten h?ufig in der t?glichen Projektentwicklung auf und sind von gro?em Referenzwert >WeChat-Antwortprinzip:

Wenn ein normaler WeChat-Benutzer eine Nachricht

an ein ?ffentliches Konto

sendet, empf?ngt der WeChat-Server zuerst die vom Benutzer gesendete Nachricht und packt sie dann Benutzerinformationen und Nachrichten in ein Datenpaket im

XML

-Format umwandeln und dieses XML-Datenpaket dann über die POST-Methode an die vom Entwickler festgelegte URL senden. Frage 1: Warum $GLOBALS["HTTP_RAW_POST_DATA"] verwenden, um POST-Daten anstelle des $_POST

Arrays

zu speichern? Antwort:

POST kann nur Standard-

Datentypen

speichern, für Inhalte wie XML, SOAP oder Application/Octet-steam. Analyse nicht m?glich . Und $GLOBALS["HTTP_RAW_POST_DATA"] ist dasselbe wie $_POST. Wenn PHP die POST-Daten erkennen kann, k?nnen Sie $GLOBALS["HTTP_RAW_POST_DATA"] verwenden, um sie zu empfangen.

Frage 2: Was sind die Parameter und Rückgabewerte von

simplexml

_load_file()? Antwort:

Parameterbedeutung

string

: XML string , der verarbeitet werden muss.

Klasse

: wird verwendet, um ein neues -Objekt anzugeben, normalerweise auf ?SimpleXMLElement“ gesetzt, um eine Klasse einfacher XML-Elemente zu generieren. Optionen: Geben Sie zus?tzliche Libxml-Parameter an, die normalerweise auf die

-Konstante

LIBXML_NOCDATA gesetzt sind, was bedeutet, dass CDATA als Textknoten festgelegt wird. ns: generell weggelassen

is_prefix: generell weggelassen

Die Funktion

gibt nach Abschluss ein Objekt der SimpleXMLElement-Klasse zurück. Funktion: Das offizielle Konto akzeptiert nur Textnachrichten und gibt entsprechende Textantworten aus.

Funktion: Der offizielle Account akzeptiert nur Bildnachrichten und gibt entsprechende Textantworten.
<span style="font-family:Courier New;font-size:14px;"><?php 
define("TOKEN","weixin"); 
$weixinObj = new Wechat(); 
$weixinObj->valid();?
class?Wechat{?
public?function?valid(){?
$echoStr?=?$_GET['echostr'];?
//如果是第一次接入?
if($this->checkSignature()?&&?$echoStr?){?
echo?$echoStr;?
exit;?
}else{?
$this->responseMsg();?
}?
}?
//校驗(yàn)方法?
private?function?checkSignature(){?
$signature?=?$_GET['signature'];?
$timestamp?=?$_GET['timestamp'];?
$nonce?=?$_GET['nonce'];?
$token?=?TOKEN;?
$tmpArr?=?array($token,?$timestamp,?$nonce);?
sort($tmpArr);?
$tmpStr?=?implode($tmpArr);?
$tmpStr?=?sha1($tmpStr);?
if($tmpStr?==?$signature){?
return?true;?
}else{?
return?false;?
}?
}?
/*?普通文本消息?
<xml>?
<ToUserName><![CDATA[toUser]]></ToUserName>?
<FromUserName><![CDATA[fromUser]]></FromUserName>?
<CreateTime>1348831860</CreateTime>?
<MsgType><![CDATA[text]]></MsgType>?
<Content><![CDATA[this is a test]]></Content>?
</xml>?
*/?
public?function?responseMsg(){?
//獲取微信服務(wù)器POST請(qǐng)求中的數(shù)據(jù)?
$postStr?=?$GLOBALS["HTTP_RAW_POST_DATA"];?
if(?!empty($postStr)?){?
$postObj?=?simplexml_load_string($postStr,?'SimpleXMLElement',?LIBXML_NOCDATA);?
$fromUser?=?$postObj->FromUserName;?
$toUser?=?$postObj->ToUserName;?
$keyword?=?trim($postObj->Content);?
$time?=?time();?
$template?=?"<xml>?
<ToUserName><![CDATA[%s]]></ToUserName>?
<FromUserName><![CDATA[%s]]></FromUserName>?
<CreateTime>%s</CreateTime>?
<MsgType><![CDATA[%s]]></MsgType>?
<Content><![CDATA[%s]]></Content>?
</xml>";?
if(?strtolower($postObj->MsgType)!='text'?){?
$msgType?=?"text";?
$content?=?"我只接受文本消息";?
}else{?
$msgType?=?"text";?
if(?!empty($keyword)?){?
$content?=?"您發(fā)送的消息是:".$postObj->Content;?
}else{?
$content?=?"請(qǐng)輸入關(guān)鍵字";//消息為空?
}?
}?
$info?=?sprintf($template,?$fromUser,?$toUser,?$time,?$msgType,?$content);?
echo?$info;?
}else{?
echo?"";?
exit;?
}?
}?
}</span>

Das Obige ist das Wissen, das der Herausgeber mit Ihnen über die Fallstricke geteilt hat, die beim automatischen Antworten auf WeChat-Nachrichten auftreten. Ich hoffe, es wird für alle hilfreich sein!
<span style="font-family:Courier New;font-size:14px;"><?php 
define("TOKEN","weixin"); 
$weixinObj = new Wechat(); 
$weixinObj->valid();?
class?Wechat{?
public?function?valid(){?
$echoStr?=?$_GET['echostr'];?
//如果是第一次接入?
if($this->checkSignature()?&&?$echoStr?){?
echo?$echoStr;?
exit;?
}else{?
$this->responseMsg();?
}?
}?
//校驗(yàn)方法?
private?function?checkSignature(){?
$signature?=?$_GET['signature'];?
$timestamp?=?$_GET['timestamp'];?
$nonce?=?$_GET['nonce'];?
$token?=?TOKEN;?
$tmpArr?=?array($token,?$timestamp,?$nonce);?
sort($tmpArr);?
$tmpStr?=?implode($tmpArr);?
$tmpStr?=?sha1($tmpStr);?
if($tmpStr?==?$signature){?
return?true;?
}else{?
return?false;?
}?
}?
/*?接收?qǐng)D片消息格式?
<xml>?
<ToUserName><![CDATA[toUser]]></ToUserName>?
<FromUserName><![CDATA[fromUser]]></FromUserName>?
<CreateTime>1348831860</CreateTime>?
<MsgType><![CDATA[image]]></MsgType>?
<PicUrl><![CDATA[this is a url]]></PicUrl>?
<MediaId><![CDATA[media_id]]></MediaId>?
<MsgId>1234567890123456</MsgId>?
</xml>?
*/?
public?function?responseMsg(){?
//獲取微信服務(wù)器POST請(qǐng)求中的數(shù)據(jù)?
$postStr?=?$GLOBALS["HTTP_RAW_POST_DATA"];?
if(?!empty($postStr)?){?
$postObj?=?simplexml_load_string($postStr,?'SimpleXMLElement',?LIBXML_NOCDATA);?
$fromUser?=?$postObj->FromUserName;?
$toUser?=?$postObj->ToUserName;?
$time?=?time();?
$msgType=?$postObj->MsgType;?
$picUrl?=?$postObj->PicUrl;?
$mediaId?=?$postObj->MediaId;?
$template?=?"<xml>?
<ToUserName><![CDATA[%s]]></ToUserName>?
<FromUserName><![CDATA[%s]]></FromUserName>?
<CreateTime>%s</CreateTime>?
<MsgType><![CDATA[%s]]></MsgType>?
<Content><![CDATA[%s]]></Content>?
</xml>";?
if(?strtolower($msgType)!='image'?){?
$msgType?=?"text";?
$content?=?"我只接受圖片消息";?
}else{?
$msgType?=?"text";?
if(?!empty(?$picUrl?)?){?
$content?=?"圖片鏈接為:".$picUrl."\n";?
$content?.=?"媒體id:".$mediaId;?
}else{?
$content?=?"請(qǐng)發(fā)送圖片";//消息為空?
}?
}?
$info?=?sprintf($template,?$fromUser,?$toUser,?$time,?$msgType,?$content);?
echo?$info;?
}else{?
echo?"";?
exit;?
}?
}?
}</span>

Das obige ist der detaillierte Inhalt vonBei der automatischen Beantwortung von WeChat-Nachrichten sind in der PHP-WeChat-Entwicklung Probleme aufgetreten. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erkl?rung dieser Website
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

Hei?e KI -Werkzeuge

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem v?llig kostenlosen KI-Gesichtstausch-Tool aus!

Hei?e Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Hei?e Themen

PHP-Tutorial
1502
276