Comment lire les données affichées à l'ASP classique avec jQuery AJAX
J'ai écrit le code Javascript suivant:
function sendCcbRequest(text) {
var jsonToSend = "\"text\": \"" + escape(text) + "\"";
$.ajax({
type: "POST",
url: 'x.asp',
data: jsonToSend,
success: function(response) {
alert("success:" + response);
},
error: function() {
alert("error");
}
}); //end ajax
}
Comment puis-je lire les données que je poste de mon classique code ASP?
mise à Jour
J'ai essayé ce qui suit pour mon classique fichier asp x.asp.
<%
Dim x
x = Request.Form("text")
Response.Write(x)
%>
Elle affiche toujours rien.
OriginalL'auteur Daniel Allen Langdon | 2011-03-28
Vous devez vous connecter pour publier un commentaire.
La façon dont les données sont affichées à l'aide de cette méthode (comme affiché dans la question) n'a pas vraiment de créer un objet de formulaire côté serveur. Donc, les données publiées sont à lire à l'aide de Demande.BinaryRead et puis converti en chaîne de caractères en utilisant l'une des méthodes donné ici. Comme vous l'avez déjà noté, si vous envoyez les données à l'aide de la chaîne de requête forme cle1=valeur1&cle2=valeur2 ou une carte de la forme {key1: 'value1', key2: 'valeur2'}, les données publiées sont une forme valide et ASP permettrait de le convertir à une Demande.Forme qui peut être lu beaucoup plus facilement.
OriginalL'auteur amit_g
Ok, j'ai trouvé quelque chose qui fonctionne. La ligne de code suivante:
doit être modifié pour
OriginalL'auteur Daniel Allen Langdon
Je voudrais utiliser l'analyseur décrit ici: Toutes les bonnes bibliothèques pour l'analyse JSON en ASP Classique? . Il a travaillé pour moi.
Request
objet que je puisse invoquer pour le lire?Dans ce cas, je le traiter comme n'importe quel nom:valeur transmis dans la demande.. <%=Request.Forme("nom")%>
OriginalL'auteur roberttdev
De la
x.asp
page, il suffit d'utiliser:Request.Form("text")
de lire le texte que votre requête Ajax posté.Request.Form("text")
. Pourrait être dans l'erreur côté client jQuery?Avez-vous accès à un outil de débogage? Êtes-vous à l'aide de FireBug? Si oui, jetez un oeil à les paquets HTTP que vous envoyez sur le serveur pour voir si la demande semble bien. Vous pouvez utiliser FireBug, ou WireShark ou Fiddler la trace de la requête/réponse HTTP(s). La requête POST doit ressembler à quelque chose comme:
text=somevalue
OriginalL'auteur Mike Dinescu