Heim  >  Artikel  >  Backend-Entwicklung  >  Die Post-Anfrage einer WeChat-Webseite eines Drittanbieters wird zu einer Get-Anfrage.

Die Post-Anfrage einer WeChat-Webseite eines Drittanbieters wird zu einer Get-Anfrage.

WBOY
WBOYOriginal
2016-08-04 09:19:032308Durchsuche

Vor kurzem entwickle ich die dritte Webseite von WeChat und jetzt stoße ich auf ein Problem, wenn ich Post verwende, um von Seite A zu Seite B zu springen, kann Seite B die im Post enthaltenen Daten nicht abrufen.
Beim Betrachten des Anforderungskopfes habe ich festgestellt, dass sich die Methode geändert hat. Wie ist die Situation? Wie soll ich den Code
wie folgt ändern?


<code><script type="text/javascript">

  post("?a=cso",{serviceOrderJson :JSON.stringify(json),id:123});

  function post(URL, PARAMS) {
            var temp = document.createElement("form");
            temp.action = URL;
            temp.method = "post";
            temp.style.display = "none";
            for (var x in PARAMS) {
                var opt = document.createElement("textarea");
                opt.name = x;
                opt.value = PARAMS[x];
                temp.appendChild(opt);
            }
            document.body.appendChild(temp);
            temp.submit();
            return temp;
        }
</script>
</code>

Als ich mir den Anfragekopf im Browser ansah, stellte ich fest, dass sich die Situation geändert hatte und wie ich sie ändern sollte

Antwortinhalt:
<code>Request URL:http://1535uf1143.iask.in/index.php?a=cso&code=031q5DH32yHVeJ07jHI3205CH32q5DHG&state=STATE
Request Method:GET
Status Code:200 OK
Remote Address:122.228.19.57:80</code>

Vor kurzem entwickle ich die dritte Webseite von WeChat und jetzt stoße ich auf ein Problem, wenn ich Post verwende, um von Seite A zu Seite B zu springen, kann Seite B die im Post enthaltenen Daten nicht abrufen.

Beim Betrachten des Anforderungskopfes habe ich festgestellt, dass sich die Methode geändert hat. Wie ist die Situation? Wie soll ich den Code
wie folgt ändern?


Als ich mir den Anfragekopf im Browser ansah, stellte ich fest, dass sich die Situation geändert hatte und wie ich sie ändern sollte
<code><script type="text/javascript">

  post("?a=cso",{serviceOrderJson :JSON.stringify(json),id:123});

  function post(URL, PARAMS) {
            var temp = document.createElement("form");
            temp.action = URL;
            temp.method = "post";
            temp.style.display = "none";
            for (var x in PARAMS) {
                var opt = document.createElement("textarea");
                opt.name = x;
                opt.value = PARAMS[x];
                temp.appendChild(opt);
            }
            document.body.appendChild(temp);
            temp.submit();
            return temp;
        }
</script>
</code>

Wenn Sie Seite B erreichen, wird sie zu GET, was bedeutet, dass die Art und Weise, wie Sie Parameter auf Seite B akzeptieren, GET ist

Vielleicht gab es eine Übertragung
<code>Request URL:http://1535uf1143.iask.in/index.php?a=cso&code=031q5DH32yHVeJ07jHI3205CH32q5DHG&state=STATE
Request Method:GET
Status Code:200 OK
Remote Address:122.228.19.57:80</code>

Wenn Sie

die von Ihnen definierte Methode aufrufen, achten Sie bitte auf

Ich vermute ernsthaft, dass Ihr Parameter falsch ist. Zumindest kopiere ich jetzt deinen Code und er läuft normal

Javascriptpost post("?a=cso",{serviceOrderJson :JSON.stringify(json),id:123});

PHP-Server

<code class="javascript">    var temp = document.createElement("form");
    var PARAMS = [1, 2, 3, 4, 5];

    var URL = '/test/wocaocao2';

    temp.action = URL;
    temp.method = "post";
    temp.style.display = "none";
    for (var x in PARAMS) {
        var opt = document.createElement("textarea");
        opt.name = x;
        opt.value = PARAMS[x];
        temp.appendChild(opt);
    }
    document.body.appendChild(temp);

    temp.submit();
</code>
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