Question

J'essaie d'utiliser CURL avec SPNEGO Négocier un type d'authentification via Ruby.

J'ai essayé plusieurs bibliothèques, mais on dirait que httpi ait un moyen de le faire à travers son adaptateur de bordure comme ce lien:

https://gist.github.com/3179054#Comments

Je me demandais s'il y a un moyen d'envoyer des données JSON en tant que partie "Données" de ma boucle au lieu d'un fichier tel que donné dans le lien.(Je veux dire l'option Curl -D)

My Curl va comme ça:

curl -x post -d "{" ID ":" 12341234 "," FieldRequestested ": [" Titre "," State "," Composant "]}" -h> "Accepter: Application / JSON" -H"Type de contenu: Application / JSON" --Negotiate -u:> https://abcd.com/find/it

Était-ce utile?

La solution

Envoyer des données JSON avec httpi / curb, définissez simplement votre chaîne JSON en tant que corps de demande comme suit:

require 'httpi'
require 'curb'
require 'json'  
# ...  

req.body = {"id"=>"12341234","fieldsRequested"=>["title","state","component"]}.to_json

# Then set your custom headers
req.headers = {"Accept" => "application/json", "Content-Type" => "application/json"}

Ne permettez pas également à l'option multipart_form_post car Post Multipart n'est pas nécessaire:

req.auth.gssnegotiate
resp = HTTPI.post req do |http|
  http.use_ssl
end

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top