Ist es möglich, eine POST-Anfrage von Ruby mit Open-URI zu machen?Wie mache ich eine POST-Anfrage mit open-URI?
Antwort
Leider unterstützt open-uri
nur das GET
Verb.
Sie können entweder eine Ebene herunterlassen und net/http
verwenden, oder rest-open-uri
verwenden, die entwickelt wurde, um POST
und andere Verben zu unterstützen. Sie können gem install rest-open-uri
installieren, um es zu installieren.
Ich würde auch wirklich rest-client empfehlen. Es ist eine gute Grundlage für das Schreiben eines API-Clients.
require 'open-uri'
require 'net/http'
params = {'param1' => 'value1', 'param2' => 'value2'}
url = URI.parse('http://thewebsite.com/thepath')
resp, data = Net::HTTP.post_form(url, params)
puts resp.inspect
puts data.inspect
Es funktionierte für mich :)
-1 Dies ist nicht mit OpenURI, um die Verbindung zu handhaben, verwendet es Net :: HTTP. In diesem Beispiel wird OpenURI nur zum Laden des URI-Moduls verwendet. –
Auch Sie haben 'params' erklärt, dann referenzierte' query' – KomodoDave
spielt keine Rolle, ob es verwendet oder nicht. Wenn open-uri das nicht kann, wird diese Antwort vielen Menschen helfen. Keine Möglichkeit, diese Antwort zu verwerfen – mask8
So einfach wie es nur geht:
require 'open-uri'
require 'net/http'
response = Net::HTTP.post_form(URI.parse("https://httpbin.org/post"), { a: 1 })
puts response.code
puts response.message
puts response.body
ich response.methods - Object.methods
empfehlen alle verfügbaren Methoden, um zu sehen, zum Beispiel message
, header,
Bonus: POST/DELETE-Anfragen:
puts Net::HTTP.new("httpbin.org").post("/post", "a=1").body
puts Net::HTTP.new("httpbin.org").delete("/delete").body
- 1. Wie mache ich eine Schattenbox mit Farbverlauf?
- 2. Wie mache ich eine ListPreference mit Checkbox
- 3. Wie mache ich eine Klasseneigenschaft mit mox?
- 4. Wie kann ich eine Postanfrage von meiner Site an eine andere Site in angular 2 stellen?
- 5. Wie mache ich eine Knopfanimation?
- 6. Wie mache ich eine Zeitsequenz?
- 7. OpenURI :: HTTPError: 403 Forbidden
- 8. Wie mache ich eine "beginnt mit" Abfrage mit SQL Alchemie?
- 9. Wie mache ich eine Ansicht 50% transparent?
- 10. Wie mache ich eine Arraylist public
- 11. Wie mache ich eine Echtzeit-Mehrfachliniengrafik?
- 12. Wie mache ich eine wirklich transparente Kontrolle?
- 13. Zend_Db_Table_Abstract - Wie mache ich eine SUMME?
- 14. Wie mache ich eine aspxdocumentviewer Richtung rtl?
- 15. Wie mache ich eine feste div?
- 16. Wie mache ich eine saubere asynchrone Schleife?
- 17. Wie mache ich eine Säuberung nach SIGKILL?
- 18. Wie mache ich eine Variable local
- 19. Wie mache ich eine Struktur unveränderlich?
- 20. Wie mache ich eine XSL-Reihe unsichtbar?
- 21. Wie mache ich eine Schleife in Assembler?
- 22. Wie mache ich eine Ellipse blinken?
- 23. Wie mache ich eine skinfähige Anwendung?
- 24. Wie mache ich eine Instanz bewegen
- 25. Wie mache ich eine Kompilierung compileSdkVersion?
- 26. RxJava: Wie mache ich eine Observable Observable?
- 27. Wie mache ich eine expandierende Textbox?
- 28. Wie mache ich eine Rohrschleife in Zsh?
- 29. Tkinter: Wie mache ich eine Taskleiste?
- 30. Wie mache ich eine href zu Port?
Der Link lautet jetzt: https://github.com/rest-client/rest-client –