it-swarm.it

Come POST un JSON per un URL specifico usando VB.NET?

Sono un principiante dei servizi web in VB.NET. Sto facendo un'applicazione desktop che parlerà con JIRA (http://www.atlassian.com/software/jira/). Hanno fornito un REST api che ho deciso di usare. Il primo passo è effettuare il login che dicono che ...

"Per accedere a JIRA, è necessario POST un nome utente e una password in formato JSON ..."

{"username": "admin", "password": "admin"}

a questo URL ...

https: // addressgoeshere (stiamo usando https)

Qualcuno può fornirmi un codice di esempio per farlo, così posso avere una guida e un buon inizio? Per favore e grazie mille!

19
max

ecco il codice per pubblicare efficacemente json. La variabile res è in grado di darti la risposta alla tua domanda

ricordati di importare

  • System.Net
  • System.IO
  • System.Text

usando

Imports

e poi i nomi delle importazioni

per bypassare il certificato ssl scaduto controllare questo: http://blog.jameshiggs.com/2008/05/01/c-how-to-accept-an-invalid-ssl-certificate-programmatically/

Private Function SendRequest(uri As Uri, jsonDataBytes As Byte(),contentType As String, method As String) As String
Dim req As WebRequest = WebRequest.Create(uri)
req.ContentType = contentType
req.Method = method
req.ContentLength = jsonDataBytes.Length


Dim stream = req.GetRequestStream()
stream.Write(jsonDataBytes, 0, jsonDataBytes.Length)
stream.Close()

Dim response = req.GetResponse().GetResponseStream()

Dim reader As New StreamReader(response)
Dim res = reader.ReadToEnd()
reader.Close()
response.Close()

Return res
End Function

usare questa funzione

Dim data = Encoding.UTF8.GetBytes(jsonSring)
Dim result_post = SendRequest(uri, data, "application/json", "POST")
30
Parvesh

Per "La connessione sottostante è stata chiusa:" l'errore include queste 2 righe di codice dopo che la riga ...WebRequest.Create(Url) -it dovrebbe funzionare 

System.Net.ServicePointManager.UseNagleAlgorithm = FalseSystem.Net.ServicePointManager.Expect100Continue = False

1
ChrisBaris