Comment envoyer des données de formulaire JSON avec mécaniser ou Faraday dans Ruby
-
23-12-2019 - |
Question
Je souhaite récupérer des données d'un site Web utilisant des données JSON pour définir des paramètres de recherche personnalisés qui semblent être demandés via Ajax.Les données transmises apparaissent sous XHR-> Demander une charge utile dans Firebug:
{"filters": [{"action": "post", "filterName": "Hersteller", "ids": [269],
"settingName": "Hersteller", "settingValue": "ValueA"},
{"action": "delete", "filterName": "Modelle",
"settingName": "Modelle", "settingValue": ""}]}
Le site ne transmet aucun paramètre de poste, mais uniquement ce JSON codé des données pour appliquer des critères de recherche.Passer ces données sous forme de paramètres de poste avec la mécanisie ne fonctionne pas.
Comment ces données peuvent-elles être transmises à l'aide de mécanismes ou de Faraday dans Ruby sur des rails?
La solution
avec mécaniser vous feriez:
agent.post url, data.to_json, {'Content-Type' => 'application/json'}
Autres conseils
J'ai compris un moyen de faire ceci:
connection = Faraday.new
fetched_page = connection.post do |request|
request.url 'http://www.site.com'
request.headers['Content-Type'] = 'application/json'
request.body = '{"filters": [{"action": "post", "filterName": "Hersteller", "ids": [269],
"settingName": "Hersteller", "settingValue": "ValueA"}, {"action": "delete", "filterName": "Modelle", "settingName": "Modelle", "settingValue": ""}]}'
end
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow