Heim WeChat-Applet WeChat-Entwicklung So lösen Sie das Access_token-Ablaufproblem in der .Net WeChat-Entwicklung

So lösen Sie das Access_token-Ablaufproblem in der .Net WeChat-Entwicklung

Mar 28, 2017 pm 02:43 PM
.net 微信

In diesem Artikel wird hauptsächlich detailliert beschrieben, wie das Access_token-Ablaufproblem in der .Net WeChat-Entwicklung gelöst werden kann.

Da access_token in zukünftigen erweiterten Funktionen enthalten sein wird, wird es häufig verwendet Ich muss das zuvor hier erläuterte access_token ändern.
Darüber hinaus ist zu beachten, dass sich das access_token ändert und einen eigenen Zyklus hat. Die offizielle Erklärung lautet: „Die Gültigkeitsdauer beträgt 7200 Sekunden“, was erfordert, dass wir das erhaltene access_token in einer physischen Datei oder Anwendung speichern und anfordern Ändern Sie diese Inhalte nach Ablauf und lesen Sie sie bei Bedarf vor.
Einige Leute haben möglicherweise gedacht, dass ich nur eine erhalten kann. Der gleiche Effekt kann ohne physische Dateien und Anwendungen erzielt werden, aber Sie müssen darauf achten Die Anzahl der pro Tag erhaltenen Access_Tokens ist ebenfalls begrenzt. Wenn es viele Benutzer gibt, wird sie definitiv überschritten. Wir implementieren diese Funktionen also immer noch gemäß den oben genannten Ideen: Zuvor haben wir die Methode zum Erhalten von access_token (Verbindung) bereits verstanden, jetzt müssen wir nur noch sicherstellen, dass sie jederzeit aktualisiert wird
Erstellen Sie zunächst eine Access_token-Klasse


/// <summary>
///Access_token 的摘要说明
/// </summary>
public class Access_token
{
 public Access_token()
 {
 //
 //TODO: 在此处添加构造函数逻辑
 //
 }
 string _access_token;
 string _expires_in;

 /// <summary>
 /// 获取到的凭证 
 /// </summary>
 public string access_token
 {
  get { return _access_token; }
  set { _access_token = value; }
 }

 /// <summary>
 /// 凭证有效时间,单位:秒
 /// </summary>
 public string expires_in
 {
  get { return _expires_in; }
  set { _expires_in = value; }
 }
}
Nach dem Login kopieren

Verwenden Sie die folgende XML-Datei, um access_token zu speichern, erstellen Sie eine XMLFile.xml und schreiben Sie den Inhalt des Access_YouXRQ-Tags als vergangene Zeit, damit Wir können am Anfang beginnen. Beim Aufruf wird festgestellt, dass es abgelaufen ist, und dann wird ein neues access_token abgerufen.


<?xml version="1.0" encoding="utf-8"?>
<xml>
 <Access_Token>初始值可以随便写</Access_Token>
 <Access_YouXRQ>1980/12/12 16:06:38</Access_YouXRQ>
</xml>
Nach dem Login kopieren

Ändern Sie die vorherige Methode zum Erhalten von Access_token und lassen Sie sie der Access_token-Instanz einen Wert zuweisen


public static Access_token GetAccess_token()
 {
  string appid = 你的appid ;
  string secret = 你的secret;
  string strUrl = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=" + appid + "&secret=" + secret;
  Access_token mode = new Access_token();

  HttpWebRequest req = (HttpWebRequest)HttpWebRequest.Create(strUrl);

  req.Method = "GET";
  using (WebResponse wr = req.GetResponse())
  {
   HttpWebResponse myResponse = (HttpWebResponse)req.GetResponse();

   StreamReader reader = new StreamReader(myResponse.GetResponseStream(), Encoding.UTF8);

   string content = reader.ReadToEnd();
   //Response.Write(content);
   //在这里对Access_token 赋值
   Access_token token = new Access_token();
   token = JsonHelper.ParseFromJson<Access_token>(content);
   mode.access_token = token.access_token;
   mode.expires_in = token.expires_in;
  }
  return mode;
 }
Nach dem Login kopieren

Die obige Methode verwendet die Verarbeitung von Json-Objekten, daher habe ich den Code von JsonHelper als Referenz veröffentlicht. Hier ist der Code von JsonHelper.cs:


using System;
using System.IO;
using System.Text;
using System.Runtime.Serialization.Json;
 

public class JsonHelper
{
 /// <summary>
 /// 生成Json格式
 /// </summary>
 /// <typeparam name="T"></typeparam>
 /// <param name="obj"></param>
 /// <returns></returns>
 public static string GetJson<T>(T obj)
 {
  DataContractJsonSerializer json = new DataContractJsonSerializer(obj.GetType());
  using (MemoryStream stream = new MemoryStream())
  {
   json.WriteObject(stream, obj);
   string szJson = Encoding.UTF8.GetString(stream.ToArray()); return szJson;
  }
 }
 /// <summary>
 /// 获取Json的Model
 /// </summary>
 /// <typeparam name="T"></typeparam>
 /// <param name="szJson"></param>
 /// <returns></returns>
 public static T ParseFromJson<T>(string szJson)
 {
  T obj = Activator.CreateInstance<T>();
  using (MemoryStream ms = new MemoryStream(Encoding.UTF8.GetBytes(szJson)))
  {
   DataContractJsonSerializer serializer = new DataContractJsonSerializer(obj.GetType());
   return (T)serializer.ReadObject(ms);
  }
 }
}
Nach dem Login kopieren

Wir benötigen außerdem eine Möglichkeit, festzustellen, ob das access_token abgelaufen ist, und die XML-Datei zu aktualisieren, wenn sie abläuft.


/// <summary>
 /// 根据当前日期 判断Access_Token 是否超期 如果超期返回新的Access_Token 否则返回之前的Access_Token
 /// </summary>
 /// <param name="datetime"></param>
 /// <returns></returns>
 public static string IsExistAccess_Token()
 {

  string Token = string.Empty;
  DateTime YouXRQ;
  // 读取XML文件中的数据,并显示出来 ,注意文件路径
  string filepath = Server.MapPath("XMLFile.xml");

  StreamReader str = new StreamReader(filepath, System.Text.Encoding.UTF8);
  XmlDocument xml = new XmlDocument();
  xml.Load(str);
  str.Close();
  str.Dispose();
  Token = xml.SelectSingleNode("xml").SelectSingleNode("Access_Token").InnerText;
  YouXRQ = Convert.ToDateTime(xml.SelectSingleNode("xml").SelectSingleNode("Access_YouXRQ").InnerText);

  if (DateTime.Now > YouXRQ)
  {
   DateTime _youxrq = DateTime.Now;
   Access_token mode = GetAccess_token();
   xml.SelectSingleNode("xml").SelectSingleNode("Access_Token").InnerText = mode.access_token;
   _youxrq = _youxrq.AddSeconds(int.Parse(mode.expires_in));
   xml.SelectSingleNode("xml").SelectSingleNode("Access_YouXRQ").InnerText = _youxrq.ToString();
   xml.Save(filepath);
   Token = mode.access_token;
  }
  return Token;
 }
Nach dem Login kopieren

Okay, nachdem ich die oben genannten Arbeiten abgeschlossen habe, muss ich bei Verwendung von access_token nur Folgendes aufrufen, und es ist in Ordnung: „Kunden brauchen nicht mehr.“ sich Sorgen über den Ablauf des Tokens machen“
string _access_token = IsExistAccess_Token();

Das obige ist der detaillierte Inhalt vonSo lösen Sie das Access_token-Ablaufproblem in der .Net WeChat-Entwicklung. 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

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.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Wie man alles in Myrise freischaltet
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌

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)

Deepseek Image Generation Tutorial Deepseek Image Generation Tutorial Feb 19, 2025 pm 04:15 PM

Deepseek: Ein leistungsstarkes Werkzeug für KI -Bildgenerierung! Deepseek selbst ist kein Werkzeug zur Bildgenerierung, aber seine leistungsstarke Kerntechnologie unterstützt viele KI -Malwerkzeuge. Möchten Sie wissen, wie Sie Deepseek verwenden, um Bilder indirekt zu generieren? Bitte lesen Sie weiter! Generieren Sie Bilder mit Deepseek-basierten KI-Tools: In den folgenden Schritten werden die folgenden Tools verwendet. Wählen Sie den Zeichnungsmodus aus: Wählen Sie "AI -Zeichnung" oder eine ähnliche Funktion aus und wählen Sie den Bildtyp entsprechend Ihren Anforderungen wie "Anime Avatar", "Landschaft" aus, "Landschaft".

Gateio Chinesische offizielle Website Gate.io Trading Platform Website Gateio Chinesische offizielle Website Gate.io Trading Platform Website Feb 21, 2025 pm 03:06 PM

Gate.io, eine 2013 gegründete führende Kryptowährungs -Handelsplattform, bietet chinesischen Nutzern eine vollständige offizielle chinesische Website. Die Website bietet eine breite Palette von Dienstleistungen, darunter Spot -Handel, Futures -Handel und -kredite, und bietet besondere Funktionen wie chinesische Schnittstelle, reichhaltige Ressourcen und Community -Unterstützung.

Liste der Bearbeitungsgebühren für die OKX -Handelsplattform Liste der Bearbeitungsgebühren für die OKX -Handelsplattform Feb 15, 2025 pm 03:09 PM

Die OKX -Handelsplattform bietet eine Vielzahl von Zinssätzen, einschließlich Transaktionsgebühren, Auszahlungsgebühren und Finanzierungsgebühren. Bei Spot -Transaktionen variieren die Transaktionsgebühren je nach Transaktionsvolumen und VIP -Ebene und übernehmen das "Market Maker -Modell", dh der Markt, für jede Transaktion eine niedrigere Handhabungsgebühr. Darüber hinaus bietet OKX eine Vielzahl von Futures -Verträgen an, darunter Währungsstandardverträge, USDT -Verträge und Lieferverträge, und die Gebührenstruktur jedes Vertrags ist ebenfalls unterschiedlich.

Gateio Exchange App Old Version Gateio Exchange App Old Version Download Kanal Gateio Exchange App Old Version Gateio Exchange App Old Version Download Kanal Mar 04, 2025 pm 11:36 PM

Gateio Exchange-App-Kanäle für alte Versionen, die offizielle Anwendungsmärkte von Drittanbietern, Forum-Communities und andere Kanäle abdecken.

Sesam Open Door Login Registrierung Eingangstor Sesam Open Door Login Registrierung Eingangstor Mar 04, 2025 pm 04:51 PM

Gate.io (Sesam Open Door) ist die weltweit führende Kryptowährungsprüfung. Das Tutorial umfasst Schritte wie Kontoregistrierung und Anmeldung, KYC -Zertifizierung, Fiat -Währung und digitale Währungsaufladung, Handelspaarauswahl, Grenz-/Markttransaktionsbestellungen sowie Bestellungen und Transaktionsaufzeichnungen, wodurch Sie schnell auf der Gate.IO -Plattform für den Kryptowährungshandel beginnen. Egal, ob ein Anfänger oder ein Veteran, Sie können von diesem Tutorial profitieren und die Handelsfähigkeiten von Gate.io problemlos beherrschen.

Ouyi Exchange App Inländische Download -Tutorial Ouyi Exchange App Inländische Download -Tutorial Mar 21, 2025 pm 05:42 PM

Dieser Artikel enthält einen detaillierten Leitfaden zum sicheren Download der Ouyi OKX -App in China. Aufgrund von Einschränkungen in den inländischen App -Stores wird den Benutzern empfohlen, die App über die offizielle Website von Ouyi OKX herunterzuladen oder den von der offiziellen Website bereitgestellten QR -Code zum Scannen und Herunterladen zu verwenden. Überprüfen Sie während des Download-Prozesses unbedingt die offizielle Website-Adresse, überprüfen Sie die Anwendungsberechtigungen, führen Sie nach der Installation einen Sicherheitsscan durch und aktivieren Sie die Zwei-Faktor-Überprüfung. Bleiben Sie während der Nutzung an lokale Gesetze und Vorschriften ein, verwenden Sie ein sicheres Netzwerkumfeld, schützen Sie die Sicherheit der Kontos, wachsam gegen Betrug und investieren rational. Dieser Artikel ist nur als Referenz und stellt keine Anlageberatung dar.

Der Unterschied zwischen H5- und Miniprogramm und Apps Der Unterschied zwischen H5- und Miniprogramm und Apps Apr 06, 2025 am 10:42 AM

H5. Der Hauptunterschied zwischen Mini -Programmen und App ist: Technische Architektur: H5 basiert auf Web -Technologie, und Mini -Programme und Apps sind unabhängige Anwendungen. Erfahrung und Funktionen: H5 ist leicht und einfach zu bedienen, mit begrenzten Funktionen; Mini -Programme sind leicht und haben eine gute Interaktivität. Apps sind leistungsstark und haben reibungslose Erfahrung. Kompatibilität: H5 ist plattformübergreifend, Applets und Apps werden von der Plattform eingeschränkt. Entwicklungskosten: H5 verfügt über niedrige Entwicklungskosten, mittlere Mini -Programme und die höchste App. Anwendbare Szenarien: H5 eignet sich für Informationsanzeigen, Applets eignen sich für leichte Anwendungen und Apps eignen sich für komplexe Funktionen.

So kopieren Sie Xiaohongshu-Texte. Grafisches Tutorial zum Kopieren von Xiaohongshu-Texten. So kopieren Sie Xiaohongshu-Texte. Grafisches Tutorial zum Kopieren von Xiaohongshu-Texten. Jan 16, 2025 pm 04:03 PM

Lernen Sie, Xiaohongshu-Texte einfach zu kopieren! In diesem Tutorial lernen Sie Schritt für Schritt, wie Sie schnell eine Xiaohongshu-Videokopie kopieren und sich so von mühsamen Schritten verabschieden. Öffnen Sie die Xiaohongshu-App, suchen Sie das Video, das Ihnen gefällt, und klicken Sie auf den Bereich [Copywriting] unter dem Video. Drücken Sie lange auf den Kopiertext und wählen Sie die Funktion [Text extrahieren] aus den Popup-Optionen. Das System extrahiert den Text automatisch. Klicken Sie auf die Schaltfläche [Kopieren] in der unteren linken Ecke. Öffnen Sie WeChat oder andere Anwendungen wie Moments, drücken Sie lange auf das Eingabefeld und wählen Sie [Einfügen]. Klicken Sie auf Senden, um den Kopiervorgang abzuschließen. So einfach ist das!

See all articles