VincentBlackdot

VincentBlackdot

How to post data in a url

how do i post data to a url with its parameters eg

www.sendmessage.com/client/xml/send?client&pass&message&phone

i want to pick the fields client, pass, message and phone from the db and pass them to a function like

def send_msg(entry) do
     {:ok, url} ->
          options = [
            hackney: [basic_auth: {url.client, url.pass}],
            ssl: [verify: :verify_none]]

   {:ok, post_params} = prepare_request_params(entry, url)

      case HTTPoison.post(String.trim(url.url), post_params, headers, options) do

            {:ok, %HTTPoison.Response{status_code: 200, body: body}} ->
                IO.inspect(process_response_body(body))
       end

end

def prepare_request_params(entry, url) do
    {:ok,Poison.encode!(%{
        "username" => "#{url.client}",
        "password" => "#{url.pass}",
        "recipient" =>  ["#{entry.phone}"],
        "message" =>   "#{entry.message}"
    })}
  end

Most Liked

gregvaughn

gregvaughn

Aside: this is a very strange construction. Don’t use the ! version of Poison.encode if you want an :ok tuple as a return value. Just take away the ! and you’ll get an :ok tuple. (Also, Poison is an old library not much used for new code these days).

Where Next?

Popular in Questions Top

shahryarjb
Hello, I get Persian date from my client and convert it to normal calendar like this: def jalali_string_to_miladi_english_number(persi...
New
vonH
In asking this question I am more interested about the expressiveness of the language itself and less concerned about the availability of...
New
freewebwithme
Using vs code and installed ElixirLS: support and debugger. And I got an error popped up on start up says Failed to run ‘elixir’ comma...
New
minhajuddin
I have seen a lot of code which picks the first element from a list using Enum.at(0) instead of List.first. Is there a reason why people ...
New
stefanluptak
Hello everybody, usually, I use a 29" ultra-wide monitor for VSCode which can easily accomodate explorer (files panel) + file with code ...
New
fireproofsocks
Forgive me if this is obvious, but how does one delete a database record WITHOUT selecting it first? https://hexdocs.pm/ecto/Ecto.Repo.h...
New
ovidiubadita
Hey all, I discovered Elixir and I love it. I always wanted to learn a functional programming and I intended to go for Haskell, but afte...
New
Qqwy
Original source of discussion: This topic on the Pragmatic Programmers' Functional Web Development with Elixir, OTP, and Phoenix forum. ...
New
skosch
To my knowledge, put_in, Map.update etc. all have the one limitation of not automatically creating intermediate keys when needed (for exa...
New
joeerl
Hello again - after a longish gap I’ve decided I really must dig into Elixir and see what’s been happening here - so I have a few questio...
New

Other popular topics Top

sergio
In Ruby, I can go: User.find_by(email: "foobar@email.com").update(email: "hello@email.com") How can I do something similar in Elixir? ...
New
_russellb
I want to try my hand at web scraping. What tools/libraries do I need to use. I’m hoping to turn this into something professional so don’...
New
jononomo
I am trying to figure out how Mix knows whether the environment is test, dev, or prod -- where is this set? Thanks.
New
Jim
As a follow up to my earlier question: I have the code compiling and running but not getting a successful login from the rest server. ...
New
freewebwithme
Using vs code and installed ElixirLS: support and debugger. And I got an error popped up on start up says Failed to run ‘elixir’ comma...
New
mgjohns61585
Could someone help me? I'm making my first elixir program, number guessing game. I can't figure out how to convert the user's guess from ...
New
aadeshere1
I have a another noob question about loop. Since elixir is immutable, while loop is not directly possible. total = 10 while total != 0 ...
New
belgoros
I’m not a pro in using Regex and can’t figure out why the following behaviour happens, especially if we take into account the difference ...
New
romenigld
I am trying to run a deploy with docker and I successfully runned with this command: docker build -t romenigld/blog-prod . but when I t...
New
joeerl
Hello again - after a longish gap I’ve decided I really must dig into Elixir and see what’s been happening here - so I have a few questio...
New

We're in Beta

About us Mission Statement