Vieja pregunta, sí ... Pero en caso de que alguien busque en Google esto; otra opción es usar Org Babel y ob-http... (se puede instalar desde melpa ).
Con org-babel, puede crear un .orgarchivo que contenga " http" bloques de código. Cuando se evalúan estos bloques, harán la solicitud HTTP y devolverán la respuesta como resultado.
Si estos bloques tienen un #+NAME:atributo " ", puede usar sus resultados en cualquier otro org-babelbloque. Esto permite una programación alfabetizada bastante ordenada utilizando los resultados de las solicitudes HTTP.
Por ejemplo, aquí hay un pequeño documento Org que demuestra que realiza una solicitud HTTP y analiza el JSON devuelto en Ruby:
* The request
The following is the example request shown on [[https://github.com/zweifisch/ob-http][ob-http's Github page]]...
It isn't anything fancy, but it is a REST API request, and returns
JSON, so it works for the sake of this demonstration:
#+NAME:ob-languages
#+BEGIN_SRC http :pretty
GET https://api.github.com/repos/zweifisch/ob-http/languages
#+END_SRC
#+RESULTS:
: {
: "Emacs Lisp": 7034
: }
Notice how this has a "=#+NAME:=" attribute? This is a name we can use
in other =org-babel= blocks. (As you will see below)
* Using the request
Now that I have an =http= request in an org block with a name... Lets
write something in a completely different language and use our HTTP
request's response:
#+BEGIN_SRC ruby :var langs=ob-languages
require 'json'
JSON.parse(langs)['Emacs Lisp']
#+END_SRC
#+RESULTS:
: 7034
The =:var= keyword allowed me to assign the "=langs=" variable in the
Ruby block to the result of the =ob-languages= block [[The request][above]].
This didn't have to be in Ruby, this could have been any language,
including another =http= block.
Así es como se ve en org-mode:

Al presionar C-c C-cel bloque inferior (el Ruby), se evaluará automáticamente el superior para determinar su dependencia (ese es el :varbit en el encabezado del bloque). Esto significará que la httpsolicitud se realiza primero y luego los resultados se pasan a Ruby para su posterior procesamiento.
Puede hacer esto con tantos bloques como desee y con tantos idiomas.
Si esto se adapta a sus necesidades, ob-httprequiere un poco de ajustes manuales después de instalarlo para que funcione. (No te preocupes, no es tanto)
Después de la instalación ob-http, debe personalizar dos variables: org-src-lang-modesy org-babel-load-languages.
Entonces, al ejecutar M-x customize-variable, puede personalizar cada uno para incluir lo siguiente:
org-src-lang-modes: Querrá personalizar esta variable para incluir una asignación de idioma más, de modo que pueda insertar un valor más al final de la lista:
String: http
Symbol: ob-http
Entonces puedes C-x C-sguardar esa personalización.
org-babel-load-languages: Querrá agregar un elemento más a la lista de orgidiomas habilitados . " http".
Sin embargo, es posible que deba agregarlo a la lista manualmente si la opción no está en las opciones posibles, puede hacerlo haciendo clic en "Estado" y eligiendo " :" para mostrar la expresión Lisp ... Luego agregaría lo siguiente solo antes del último paréntesis de cierre:
(http . t)
Después de eso, un rápido C-x C-sy M-x org-reloaddebería ser todo lo que necesitas ...!