HTTP-Requests ausführen

Die nachfolgenden Beispiele zeigen, wie ein HTTP POST-Request mit Hilfe von combit CRM-Methoden durchgeführt werden kann. Dabei werden Informationen im JSON-Format angefordert. Weitere Informationen finden Sie auch in den Methodenbeschreibungen der HTTP*-Methoden innerhalb des Kapitels Application/cRM Objekt.

Mit den Informationen für URL, Header und Data wird die cRM.HTTPPost Methode aufgerufen, um Daten eines Webservice abzurufen. Die Antwort des Webservers wird in einer Variablen gespeichert und mit Methoden aus dem inkludierten Scripten v_Script und v_JSON verarbeitet. Beide Scripte befinden sich im Scripts-Unterordner Ihrer combit CRM-Installation. Die aufbereitete Antwort wird in separaten Messageboxen mit dem Statuscode und der Antwort des Webservers angezeigt.

Beispiel VBScript:

<!--#include-once file="...\Scripts\v_JSON\v_Script.vbs"-->

<!--#include-once file="...\Scripts\v_JSON\v_JSON.vbs"-->

 

Const sURL = "https://httpbin.org/post"

Const sHeader = "[{""key"": ""cumstom_key"", ""value"": ""custom_value""}, {""key"": ""Content-Type"", ""value"": ""application/json""}]"

Const sData = "[{""key"": ""test_key"", ""value"": ""test_value""}]"

Dim sAnswer : sAnswer = cRM.HTTPPost(sURL, sHeader, sData)

 

Set json = New v_JSON

Call json.FromString(sAnswer)

 

MsgBox "Statuscode: " & CStr(json.Item("status"))

MsgBox "Response: " & json.Item("response")

Beispiel C#-Script:

//<!--#include-once file=@"...\Scripts\v_JSON\v_Script.vbs"-->

//<!--#include-once file=@"...\Scripts\v_JSON\v_JSON.vbs"-->

 

using System.Windows.Forms;

using combit.cRM.COM;

using Newtonsoft.Json;

 

cRMApplication cRM = new cRMApplication(EApplicationStartType.GetActiveobject);

string url = "https://httpbin.org/post";

string header = @"[{""key"": ""cumstom_key"", ""value"": ""custom_value""}, {""key"": ""Content-Type"", ""value"": ""application/json""}]";

string data = @"[{""key"": ""test_key"", ""value"": ""test_value""}]";

string answer = cRM.HTTPPost(url, header, data);

       

var responseDefinition = new { status = 0, response = ""};

var response = JsonConvert.DeserializeAnonymousType(answer, responseDefinition);

MessageBox.Show(response.status.ToString());

MessageBox.Show(response.response);