Quelqu'un pourrait-il donner des conseils sur la façon d'envoyer un message HTTP avec les éléments ci-dessous comme paramètres de requête.
{
"key": "example key",
"message": {
"html": "<p>Example HTML content</p>",
"text": "Example text content",
"subject": "example subject",
"from_email": "[email protected]",
"from_name": "Example Name",
"to": [
{
"email": "[email protected]",
"name": "Recipient Name"
}
],
"headers": {
"Reply-To": "[email protected]"
},
"important": false,
"track_opens": null,
"track_clicks": null,
"auto_text": null,
"auto_html": null,
"inline_css": null,
"url_strip_qs": null,
"preserve_recipients": null,
"view_content_link": null,
"bcc_address": "[email protected]",
"tracking_domain": null,
"signing_domain": null,
"return_path_domain": null,
"merge": true,
"global_merge_vars": [
{
"name": "merge1",
"content": "merge1 content"
}
],
"merge_vars": [
{
"rcpt": "[email protected]",
"vars": [
{
"name": "merge2",
"content": "merge2 content"
}
]
}
],
"tags": [
"password-resets"
],
"subaccount": "customer-123",
"google_analytics_domains": [
"example.com"
],
"google_analytics_campaign": "[email protected]",
"metadata": {
"website": "www.example.com"
},
"recipient_metadata": [
{
"rcpt": "[email protected]",
"values": {
"user_id": 123456
}
}
],
"attachments": [
{
"type": "text/plain",
"name": "myfile.txt",
"content": "ZXhhbXBsZSBmaWxl"
}
],
"images": [
{
"type": "image/png",
"name": "IMAGECID",
"content": "ZXhhbXBsZSBmaWxl"
}
]
},
"async": false,
"ip_pool": "Main Pool",
"send_at": "example send_at"
}
Je ne sais pas comment faire cela en utilisant RestSharp
Salut,
1) Traduisez votre JSON en POCO (http://json2csharp.com/ est idéal pour cela).
2)
var votreobjet = new MonObjet{.....................} ;
var json = JsonConvert.SerializeObject(votreobjet);
var client = new RestClient(url);
var request = new RestRequest(actionPath, Method.POST);
demande .AddParameter("application/json; charset=utf-8", json, ParameterType.RequestBody);
demande .RequestFormat = DataFormat.Json ;
_client.ExecuteAsync(restRequest, réponse => ........);
merci moi aussi !
Pour la postérité, RestSharp a maintenant des méthodes intégrées pour cela.
Découvrez la méthode AddJsonBody()
de RestRequest
Ceci est correct pour RestSharp 105.0.1.0 de toute façon.
Commentaire le plus utile
Salut,
1) Traduisez votre JSON en POCO (http://json2csharp.com/ est idéal pour cela).
2)
var votreobjet = new MonObjet{.....................} ;
var json = JsonConvert.SerializeObject(votreobjet);
var client = new RestClient(url);
var request = new RestRequest(actionPath, Method.POST);
demande .AddParameter("application/json; charset=utf-8", json, ParameterType.RequestBody);
demande .RequestFormat = DataFormat.Json ;
_client.ExecuteAsync(restRequest, réponse => ........);