Heim > Backend-Entwicklung > Golang > Go-Code druckt den geposteten JSON-Wert von Jquery Ajax nicht

Go-Code druckt den geposteten JSON-Wert von Jquery Ajax nicht

WBOY
Freigeben: 2024-02-09 14:30:09
nach vorne
855 Leute haben es durchsucht

Go 代码不打印来自 jquery ajax 的已发布 json 值

PHP-Editor Xinyi stellt eine Lösung vor, die Ihnen hilft, das Drucken des von jquery ajax veröffentlichten JSON-Werts im Go-Code zu vermeiden. Auf diese Weise können Sie den Ausdruck effektiv kontrollieren und die Lesbarkeit und Sicherheit des Codes gewährleisten. Ob in der Front-End- oder Back-End-Entwicklung, diese Technik ist sehr praktisch und hilft Ihnen, JSON-Daten besser zu verarbeiten. Werfen wir einen Blick auf die konkrete Implementierungsmethode!

Frageninhalt

Fragendetails

Go-Code druckt den geposteten JSON-Wert von Jquery Ajax nicht aus

Gehen Sie zum Code-Master

routing := chi.newrouter()
routing.post("/authenticate", authenticaterouter)
Nach dem Login kopieren

Go-Code

func authenticaterouter(w http.responsewriter, r *http.request) {
    username := r.postform.get("username")
    fmt.println(r.postformvalue("username"))  //not showing posted value
    fmt.println(r.form.get("username"))       //not showing posted value
    fmt.println(r.form.get("username"))       //not showing posted value
}
Nach dem Login kopieren

jquery Ajax-Code

$.ajax({
    "type": "post",
    "url": "authenticate",
    "contenttype": "application/json; charset=utf-8",
    "datatype": "json",
    "data": json.stringify({
        "username": $(form).find("[name='username']").val(),
        "password": $(form).find("[name='password']").val(),
    }),
    beforesend: function() {
    },
    success: function(response) {
        debugger;
    },
    error: function(response) {
        debugger;
    },
    complete: function(response) {
        debugger;
    }
});
Nach dem Login kopieren

html

<form class="loginForm form-signin"><br>    
    <input type="text" name="username" />
    <input type="password" name="password" />
    <button type="submit">Log In</button>
</form>
Nach dem Login kopieren

Workaround

Sie senden JSON-Daten, aber postform verwenden URL-codierte Daten. Sie können dies tun:

type authBody struct {
   Username string `json:"username"`
   Password string `json:"password"`
}

func AuthenticateRouter(w http.ResponseWriter, r *http.Request) {
   dec:=json.NewDecoder(r.Body)
   var body authBody
   if err:=dec.Decode(&body); err!=nil {
      // deal with err
   }
   // Work with body.Username and body.Password
}
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonGo-Code druckt den geposteten JSON-Wert von Jquery Ajax nicht. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:stackoverflow.com
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage