Heim  >  Artikel  >  WeChat-Applet  >  Eine kurze Analyse, wie man kleine Programmcodes für kleine Programme dynamisch erstellt

Eine kurze Analyse, wie man kleine Programmcodes für kleine Programme dynamisch erstellt

青灯夜游
青灯夜游nach vorne
2021-11-03 11:09:092943Durchsuche

In diesem Artikel erfahren Sie, wie Sie mithilfe der WeChat-Miniprogramm-Cloud-Entwicklung dynamisch Miniprogrammcodes erstellen.

Eine kurze Analyse, wie man kleine Programmcodes für kleine Programme dynamisch erstellt

1. Einleitung

Aufgrund vieler Dinge in Schule und Beruf habe ich die „Landwirtschaft“ schon lange aufgegeben. In dieser Zeit habe ich viel gelernt und an fast zehn großen und kleinen Projekten gearbeitet. Während dieses Prozesses wurde mir immer mehr bewusst, wie wichtig das Aufnehmen ist, und so dachte ich darüber nach, mir die Zeit zu nehmen, um zu schreiben Ein Blog und eine Aufzeichnung. Lassen Sie uns über einige Wissenspunkte im Entwicklungsprozess sprechen. Es ist ein Klischee, nicht nur, damit ich beim nächsten Mal darauf zurückblicken kann, sondern auch in der Hoffnung, den Bedürftigen helfen zu können. [Verwandte Lernempfehlungen: Tutorial zur Miniprogrammentwicklung]

2. Bedarfsanalyse

In täglichen WeChat-Miniprogrammprojekten müssen wir häufig einige Werbeplakate, Einladungsplakate und andere Funktionen verwenden, z. B. ein Poster, um Freunde einzuladen, Nachdem es generiert wurde, können Benutzer in Moments posten oder Freundschaftseinladungen weiterleiten. Zu diesem Zeitpunkt müssen wir wissen, welche Benutzer Sie eingeladen haben, damit wir Belohnungen usw. problemlos verteilen können. Dies sind sehr häufige Anforderungen. Wie kann man also ähnliche Bedürfnisse erreichen?

3. Ideenanalyse

Tatsächlich ist das Wichtigste an diesen Postern der QR-Code mit Parametern (Mini-Programmcode), der durch langes Drücken und Scannen des Codes erkannt werden kann.

Anhand der Entwicklungsdokumentation für das WeChat-Miniprogramm können wir erkennen, dass es im Allgemeinen zwei Möglichkeiten gibt, diesen QR-Code mit Parametern zu generieren (Miniprogrammcode). Mithilfe der Parameter dieses QR-Codes können Sie ermitteln, welcher Benutzer das Poster erstellt hat. Wenn andere Benutzer den Code scannen, um das Miniprogramm aufzurufen, kann die identifizierte ID in der Datenbank gespeichert werden, um festzustellen, wer das Poster eingeladen hat.

Es ist zu lange her, seit ich codiert habe, daher könnte es etwas umständlich sein, es auszusprechen.

Um es zusammenzufassen: Basierend auf den Parametern des QR-Codes muss dieser Parameter in der Lage sein, den Benutzer zu lokalisieren. Im Allgemeinen kann die OpenID des Benutzers als Identifikationsparameter verwendet werden.

Ein einfaches Beispiel (Cloud-Entwicklung):

Definieren Sie eine Sammlung: Benutzer

Es gibt zwei Benutzer

U1

superiorId44 5566Superior openid field
Feldname Wert Beschreibung
_id 123456789 Verwenden Sie einfach die von der Cloud-Datenbank automatisch generierte ID. Sie müssen sie nicht selbst generieren
_openid 112233 Sie wird beim Einfügen von Daten mitgeliefert. Es ist auch ein Systemfeld
U2

Field. namevalueDescription_id987654321Verwenden Sie einfach die automatisch generierte ID Durch die Cloud-Datenbank müssen Sie es nicht selbst generieren_openid556677Es wird beim Einfügen von Daten einbezogen und ist auch ein SystemfeldsuperiorId112233The superior openid field
oben Aus dem Datenblatt geht hervor, dass U2 durch Scannen des QR-Codes (Miniprogrammcode) von U1 eingegangen ist, sodass der Wert des superiorId-Felds von U2 die openid von U1 ist


Dann, wenn wir müssen Wenn wir zählen, wie viele Personen U1 eingeladen hat, können wir die Daten abfragen, wie viele Benutzer der Wert „superiorId“ mit dem Wert „openid“ von U1 übereinstimmt.

4. Zwei Hauptimplementierungsmethoden

Wie bereits erwähnt, gibt es ungefähr zwei Möglichkeiten, diese Anforderung zu erfüllen. Lassen Sie uns also die Eigenschaften dieser beiden Implementierungsmethoden analysieren. Für uns ist es praktisch, während des Entwicklungsprozesses die geeignete Methode auszuwählen.

Pfad 1: Mini-Programmcode

WeChat bietet uns drei Möglichkeiten, Mini-Programmcodes dynamisch zu generieren. Hier werde ich nur auf die Cloud-Call-Methode eingehen, die gemäß dem Dokument. Das Prinzip ist weitgehend das Gleiche.

1, A-Schnittstelle: wxacode.createQRCode

2, C-Schnittstelle: wxacode.get

3, B-Schnittstelle: wxacode.getUnlimited

dieses Es gibt drei Schnittstellen. Für eine detaillierte Einführung können Sie auf den Titel klicken, um direkt zum offiziellen Dokument zu gelangen.

SchnittstelleBegrenzung der Anzahl der GenerationenAktualitätÜbertragene ParameterlängeSchnittstelle AAC-Schnittstellen summieren sich auf nicht mehr als 10 WLangfristig 128 Bytes Interface C AC-Schnittstellen summieren sich auf nicht mehr als 10 WLangfristig128 BytesInterface BUnbegrenztLangfristig32 sichtbare Zeichen

Wie Sie sehen können, sind die AC-Schnittstellen tatsächlich gleich und die tatsächlichen Verwendungsmethoden sind ähnlich, aber die Parameter sind unterschiedlich.

Der Unterschied zwischen AC-Schnittstelle und B-Schnittstelle liegt in der Begrenzung der Anzahl der generierten und der Länge der übertragenen Parameter. Daher müssen Sie bei der Auswahl die beiden Bedingungen berücksichtigen: die Anzahl der generierten Parameter und die Länge der übertragenen Parameter.

Methode 2: Gewöhnlicher QR-Code

Nachdem wir kurz die drei Schnittstellen des Mini-Programmcodes verglichen haben, werfen wir einen Blick auf die Eigenschaften dieses gewöhnlichen QR-Codes. Wenn die oben genannten drei Schnittstellen die Geschäftsanforderungen nicht erfüllen können, beispielsweise wenn die Parameter lang sind und die Anzahl der generierten Elemente extrem groß ist, können Sie versuchen, sie über diesen gewöhnlichen QR-Code zu implementieren.

Im Vergleich zur Schnittstelle ist die Anzahl der generierten QR-Codes unbegrenzt, die Parametertheorie kann sehr lang sein (ich habe die spezifische Länge nicht ausprobiert, aber sie ist definitiv länger als 128) und die Aktualität ist auch langfristig. Aus dieser Sicht scheint diese Methode unabhängig vom Geschäftsszenario die richtige Wahl zu sein?

Natürlich nicht, zumindest diese beiden Aspekte müssen bei gewöhnlichen QR-Codes berücksichtigt werden.

1. Offener Geltungsbereich: kleine Programme von Unternehmen, Medien, Regierungen und anderen Organisationen. Mit anderen Worten: Die Eröffnung und Nutzung persönlicher Entwicklerkonten wird nicht unterstützt.

2. Die Entwicklung ist relativ kompliziert und erfordert einen Server- und Domänennamen für die Konfiguration. Es wird viele Fallstricke geben.

Da die Umsetzung dieser Methode etwas kompliziert ist, werde ich hier nicht auf Details eingehen. Freunde, die diesbezüglich Bedürfnisse haben, können mir private Nachrichten senden, um miteinander zu kommunizieren und voneinander zu lernen.

Eine letzte Sache, die noch zu beachten ist: Unabhängig von der Implementierung muss das Miniprogramm nach der Veröffentlichung gescannt und normal verwendet werden.

5. Codebeispiel für die AC-Schnittstelle (Cloud-Entwicklung)

Die B-Schnittstelle ähnelt der AC-Schnittstelle. Sie können das Codebeispiel direkt auf der offiziellen Website anzeigen. Es sollte möglich sein, Parallelen zu ziehen. Daher nutze ich hier nur eine der AC-Schnittstellen. Die Hauptsache ist, einige häufig gestellte Fragen zu stellen.

1. Konfigurieren Sie nach dem Erstellen einer neuen Cloud-Funktion die Berechtigungen in der config.json-Datei (nehmen Sie createQRCode als Beispiel)

Eine kurze Analyse, wie man kleine Programmcodes für kleine Programme dynamisch erstellt

2. index.js-Code

const cloud = require('wx-server-sdk')
cloud.init({
  env: cloud.DYNAMIC_CURRENT_ENV,
})
exports.main = async (event) => {
  try {
    const result = await cloud.openapi.wxacode.createQRCode({
      path: event.path,
      width: event.width
    })
    return result
  } catch (err) {
    return err
  }
}

3 kein lokales Debuggen. Denken Sie daran, die Cloud-Funktion einzureichen abgefangen worden. Der kleine Programmcode wurde ebenfalls verarbeitet.

Die Triggerfunktion und der Code zur Wiederverwendung werden nicht veröffentlicht (aus Sicherheitsgründen ist es unpraktisch, sie zu veröffentlichen).

Bei der Optimierung besteht der erste Schritt darin, die Wiederverwendung in Betracht zu ziehen. Das heißt, wenn ein neuer Benutzer die Cloud-Funktion zum ersten Mal aufruft, wird sie bei der nächsten Generierung direkt aus der Datenbank gelesen. Eine kurze Analyse, wie man kleine Programmcodes für kleine Programme dynamisch erstellt

Voraussetzung ist natürlich, dass die Parameter konsistent sind.

Warum müssen wir ihn wiederverwenden? Selbst wenn es sich um denselben QR-Code handelt, sind die Parameter dieselben. Wenn Sie die Funktion zehnmal aufrufen, um ihn zu generieren, wird er immer noch als zehn Codes gezählt. nicht ein einziger Code. Wenn die Anzahl begrenzt ist, sollten Sie daher so viel wie möglich über eine Wiederverwendung nachdenken.

Eine kurze Analyse, wie man kleine Programmcodes für kleine Programme dynamisch erstelltWenn Ihnen dieser Artikel geholfen hat, geben Sie ihm bitte ein „Gefällt mir“.

Weitere Kenntnisse zum Thema Programmierung finden Sie unter:

Programmiervideos

! !

Das obige ist der detaillierte Inhalt vonEine kurze Analyse, wie man kleine Programmcodes für kleine Programme dynamisch erstellt. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:csdn.net. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen