J'ai besoin d'accéder au corps brut d'une requête postale dans le script de Google App. Je vois qu'il y a quelque chose comme qui renvoie réellement la droite de la teneur brude du corps de la demande. J'ai donc pensé qu'il doit y avoir quelque chose pour obtenir le corps complet, par exemple En tant que chaîne. p> Je ne cherche pas à accéder aux paramètres de champ de formulaire pouvant être transféré à l'aide de poteau. p> p>
7 Réponses :
Le moyen le plus simple de découvrir tout ce que vous avez accès est d'imprimer l'objet de la demande. puis effectuez un message à l'URL de votre script pour voir le contenu du journal p> p>
Merci, pour l'indice, mais tout ce que je vois sont les paramètres et la longueur de contenance: logger.log ([{QueryString = null, paramètre = {}, contextPath =, paramètres = {}, contentementlength = 3}, []])
Vous pouvez accéder au corps brut d'un message en créant un blob du paramètre. Vous pouvez ensuite appeler diverses méthodes sur l'objet BLOB tel que Getbytes () ou GetDataString (). Les fonctions sont énumérées ici .
function doPost(event) { var contentBlob = event.parameter.thefile; var contentAsString = contentBlob.getDataAsString(); var bytes = contentBlob.getBytes(); // do something with the contents ... }
Des thaks pour le pointeur, mais événement.paramètre semble être vide si je ne fournis pas un corps de formulaire multi-pièces, non? Notez que je ne cherche pas un moyen d'accéder à un champ de formulaire à plusieurs parties, mais cherchez un moyen de traiter la teneur complète du corps de poste brut.
L'accès à un fichier téléchargé est différent de l'accès au corps de la demande et, malheureusement, je ne pense pas qu'il soit actuellement possible d'accéder au corps de poste. J'ai également ajouté une réponse à cet effet: Stackoverflow.com/a/13715445/5295
Je ne pense pas qu'il soit actuellement possible d'accéder à l'organisme de poste, disons à mettre en œuvre un service de repos. J'ai soumis un demande d'amélioration pour ce ; Si vous avez trébuché sur celui-ci, n'hésitez pas à l'étoiler pour voter sur cette question. P>
Selon la nature de ce que vous essayez de faire et quel contrôle vous avez sur l'origine de la demande postale, vous pourrez peut-être vous intégrer à l'API du lecteur. Si les données postales peuvent être envoyées au compte de lecteur de l'utilisateur sous forme de fichier (contenant des données JSON brutes par exemple), votre script pourrait ensuite localiser ce fichier, charger son contenu, faire tout ce dont vous en avez besoin (mettez-le dans une feuille de calcul par exemple ), et éventuellement la corbeille le fichier d'entraînement. Cela suppose, bien sûr, que vous contrôlez comment la demande postale est envoyée. Un flux de travail pourrait impliquer: p>
Je n'ai pas encore essayé cela, mais devriez travailler! P>
Cela devrait également fonctionner.
function doPost(e) { if(typeof e !== 'undefined') Logger.log(e.parameter); }
Cela enregistre simplement les paramètres. La question est d'accéder au corps de la demande post-demande - (en-tête)
Je sais que cette question est ancienne, mais beaucoup de choses ont changé et Google l'a rendue disponible maintenant. Vous pouvez facilement accéder au corps d'une requête postale à partir de Si vous voulez analyser JSON entrant, utilisez ceci: p> dopost (e) code> à l'aide de:
Oui, mais le contenu de postdata ne contient pas l'URL de la demande postale. seuls les paramètres.
@Karanahuja que voulez-vous dire? L'URL indiquera votre propre script publié. Vous savez que de toute façon. Le reste de l'URL est les paramètres que vous pouvez maintenant obtenir. Quel est le problème?
Et si quelqu'un vient de copie ma forme d'action ou $ .Ajax URL et commence à soumettre des données indésirables à mon tableur de script Google. Donc, si je peux limiter la fonction de script de script Google Dopost pour permettre uniquement aux demandes de mon URL et non d'autre URL, je peux éviter le spam. Plus de discussion ici - Github. com / drawyl / ... Mon nom d'utilisateur est la fonction Karan-Ta Dopost (E) {// Comment obtenir l'URL de la demande postale ici ??? }
Eh bien, votre URL de script publié est votre "clé". Bien sûr, si vous partagez cela ou que cela est volé, tout le monde peut y accéder. Mais alors, quelqu'un peut-il accéder à votre compte si vous perdez votre mot de passe.