javascript - Comment la méthode $.get() de Jquery peut-elle générer des cookies lors de l'envoi d'une requête?
黄舟
黄舟 2017-06-15 09:22:34
0
6
1326

Comment la méthode $.get() de Jquery peut-elle apporter des cookies lors de l'envoi d'une requête ?

黄舟
黄舟

人生最曼妙的风景,竟是内心的淡定与从容!

répondre à tous(6)
滿天的星座

Sous le même domaine, les cookies seront automatiquement inclus

伊谢尔伦

Tout d’abord, la méthode get et la méthode post de jquery sont toutes deux des encapsulations d’ajax, voir le code source

jQuery.each( [ "get", "post" ], function( i, method ) {
jQuery[ method ] = function( url, data, callback, type ) {

    // Shift arguments if data argument was omitted
    if ( jQuery.isFunction( data ) ) {
        type = type || callback;
        callback = data;
        data = undefined;
    }

    // The url can be an options object (which then must have .url)
    return jQuery.ajax( jQuery.extend( {
        url: url,
        type: method,
        dataType: type,
        data: data,
        success: callback
    }, jQuery.isPlainObject( url ) && url ) );
};

} );`

Alors, comment puis-je apporter des cookies lors de l'envoi d'une demande ?
Lorsque la méthode ajax envoie une requête, elle apportera automatiquement le cookie du nom de domaine auquel vous êtes connecté et vous n'avez pas besoin de le définir.

Ainsi, la méthode $.get() de Jquery apportera toujours des cookies

typecho

Lors de son utilisation, le client apportera automatiquement le cookie et jquery a été encapsulé. Si vous souhaitez personnaliser le cookie vous-même, vous pouvez utiliser le plug-in $.cookie pour définir le cookie client et enfin l'obtenir.

Pour le débogage, vous pouvez ouvrir la console F12 et visualiser les informations dans l'en-tête de la requête sur le réseau

巴扎黑

Premier dans la consoleApplication里面的cookies选项里面找找,cookies设置get成功了没。如果有设置好,客户端在同一域名下,会自动在每个页面带上cookie.

学习ing

Lors de l'envoi d'une requête, le navigateur transportera automatiquement le cookie et le transmettra en arrière-plan. Seuls les paramètres localStorage/sessionStorage doivent être transmis de manière asynchrone en tant que paramètres

.
为情所困
**$.support.cors = true;**
$.ajax({
            url: urls.getDetailList,
            type: "get",
            dataType: "json", 
            **xhrFields: { withCredentials: true },**
            success: function(res) {}
})

Vous ne devriez pas activer le cross-domain $.support.cors. Ajoutez simplement le code de fin avecCredentials. De plus, le backend doit également être configuré avec cross-domain.

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal