jQuery.get、jQuery.getJSON、jQuery.post无法返回JSON问题的解决方法_jquery
经过尝试,只需要在$.ajax中加入 contentType: "application/json; charset=utf-8"选项就可以了,这是因为在.net 3.5以后要对contentType进行检查,所以仅仅指定dataType的话.net就不会返回JSON了,那么我们的请求自然也就无法请求到JSON数据了。正确写法就是这样了:
var url = "/Services/AccountService.asmx/UserExists";
var userName = $("#txtUserName").val();
$.ajax({
type: "POST",
url: url,
data: '{userName:"'+userName+'"}',
dataType: "json",
success: function (json) {
if (json.d == true) {
$("#submit").removeAttr("disabled");
return;
}
$("#submit").attr("disabled", "disabled");
}
});
更正后代码
var url = "/Services/AccountService.asmx/UserExists";
var userName = $("#txtUserName").val();
$.ajax({
type: "POST",
url: url,
data: '{userName:"'+userName+'"}',
dataType: "json",
contentType: "application/json; charset=utf-8",
success: function (json) {
if (json.d == true) {
$("#submit").removeAttr("disabled");
return;
}
$("#submit").attr("disabled", "disabled");
}
});
但是在使用$.get、$.getJSON、$.post时确怎么也得不到JSON数据了,写法如下:
$.get代码
var url = "/Services/AccountService.asmx/UserExists";
var userName = $("#txtUserName").val();
$.get(
url
, { userName: userName }
, function (json) {
if (json.d == true) {
$("#submit").removeAttr("disabled");
return;
}
$("#submit").attr("disabled", "disabled");
},"json");
$.getJSON代码
var url = "/Services/AccountService.asmx/UserExists";
var userName = $("#txtUserName").val();
$.getJSON(
url
, { userName: userName }
, function (json) {
if (json.d == true) {
$("#submit").removeAttr("disabled");
return;
}
$("#submit").attr("disabled", "disabled");
});
$.post代码
var url = "/Services/AccountService.asmx/UserExists";
var userName = $("#txtUserName").val();
$.post(
url
, { userName: userName }
, function (json) {
if (json.d == true) {
$("#submit").removeAttr("disabled");
return;
}
$("#submit").attr("disabled", "disabled");
},'json');
用HttpWatch查看请求返回的数据如下:
看一下jQuery.extend中有关代码:
jQuery.extend
jQuery.extend({
get: function( url, data, callback, type ) {
// shift arguments if data argument was omited
if ( jQuery.isFunction( data ) ) {
type = type || callback;
callback = data;
data = null;
}
return jQuery.ajax({
type: "GET",
url: url,
data: data,
success: callback,
dataType: type
});
},
getScript: function( url, callback ) {
return jQuery.get(url, null, callback, "script");
},
getJSON: function( url, data, callback ) {
return jQuery.get(url, data, callback, "json");
},
post: function( url, data, callback, type ) {
// shift arguments if data argument was omited
if ( jQuery.isFunction( data ) ) {
type = type || callback;
callback = data;
data = {};
}
return jQuery.ajax({
type: "POST",
url: url,
data: data,
success: callback,
dataType: type
});
}
});
原因就是.net 3.5以后要对contentType进行检查,如果不为json的话,就不会返回json,而get、getJSON、post扩展都再次调用了ajax,但是只传了dataType参数,.net 3.5在检查contentType时发现其不是json,便返回了xml.

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Si vous êtes un administrateur informatique ou un expert en technologie, vous devez être conscient de l'importance de l'automatisation. Surtout pour les utilisateurs de Windows, Microsoft PowerShell est l'un des meilleurs outils d'automatisation. Microsoft propose une variété d'outils pour vos besoins d'automatisation, sans qu'il soit nécessaire d'installer des applications tierces. Ce guide détaillera comment exploiter PowerShell pour automatiser les tâches. Qu'est-ce qu'un script PowerShell ? Si vous avez de l'expérience avec PowerShell, vous avez peut-être utilisé des commandes pour configurer votre système d'exploitation. Un script est une collection de ces commandes dans un fichier .ps1. Les fichiers .ps1 contiennent des scripts exécutés par PowerShell, tels que Get-Help de base

Pour les développeurs PHP, utiliser POST pour accéder à des pages avec des paramètres est une compétence de base. POST est une méthode d'envoi de données en HTTP. Il peut soumettre des données au serveur via des requêtes HTTP. La page de renvoi traite et saute la page côté serveur. Dans le développement réel, nous devons souvent utiliser POST avec des paramètres pour accéder aux pages afin d'atteindre certains objectifs fonctionnels.

PHP est un langage de script côté serveur largement utilisé qui peut être utilisé pour créer des applications Web interactives et dynamiques. Lors du développement d'applications PHP, nous devons généralement soumettre les données saisies par l'utilisateur au serveur pour traitement via des formulaires. Cependant, nous devons parfois déterminer si les données du formulaire ont été soumises en PHP. Cet article explique comment effectuer une telle détermination.

Python simule le navigateur envoyant des demandes de publication au format importrequests request.postrequest.post(url,data,json,kwargs)#format de demande de publication request.get(url,params,kwargs)#Par rapport à la demande d'obtention, les paramètres d'envoi de demande de publication sont divisés en Le paramètre de données Forms ( x-www-form-urlencoded) json (application/json) prend en charge le format de dictionnaire et le format de chaîne. Le format de dictionnaire utilise la méthode json.dumps() pour convertir les données en chaîne au format json légal.

1. Java appelle l'interface de publication 1. Utilisez URLConnection ou HttpURLConnection fourni avec Java. Il n'est pas nécessaire de télécharger d'autres packages jar. Si le code de réponse de l'interface est modifié par le serveur, le message de retour ne peut pas être reçu. ne peut être reçu que lorsque le code de réponse est correct pour renvoyer publicstaticStringsendPost(Stringurl,Stringparam){OutputStreamWriterout=null;BufferedReaderin=null;StringBuilderresult=newSt.

Nom du serveur :server{listen80;listen443ssl;server_namenirvana.test-a.gogen;ssl_certificate/etc/nginx/ssl/nirvana.test-a.gogen.crt;ssl_certificate_key/etc/nginx/ssl/nirvana.test-a.gogen .key;proxy_connect_timeout600;proxy_read_timeout600;proxy_send_timeout600;c

Titre : Exemple de code PHP : Comment utiliser POST pour transmettre des paramètres et implémenter des sauts de page. Dans le développement Web, cela implique souvent la nécessité de transmettre des paramètres via POST et de les traiter côté serveur pour implémenter des sauts de page. PHP, en tant que langage de script côté serveur populaire, fournit une multitude de fonctions et de syntaxes pour atteindre cet objectif. Ce qui suit présentera comment utiliser PHP pour implémenter cette fonction à travers un exemple pratique. Tout d'abord, nous devons préparer deux pages, une pour recevoir les requêtes POST et les paramètres de processus.

PHP est un langage de programmation largement utilisé dans le développement de sites Web, et les sauts de page et le transport de données POST sont des exigences courantes dans le développement de sites Web. Cet article présentera comment implémenter le saut de page PHP et transporter les données POST, y compris des exemples de code spécifiques. En PHP, les sauts de page sont généralement implémentés via la fonction header. Si vous devez transporter des données POST pendant le processus de saut, vous pouvez le faire en suivant les étapes suivantes : Tout d'abord, créez une page contenant un formulaire, dans lequel l'utilisateur remplit les informations et clique sur le bouton Soumettre. Acti sous la forme
