如何在android post请求中添加一个json数组到madrill API

时间:2015-01-06 21:39:58

标签: php android json mandrill

我正在使用这个PHP代码发送电子邮件并且可以正常使用

$uri = 'https://mandrillapp.com/api/1.0/messages/send.json';

$postString = '{
"key": "mykey",
"message": {
"html": "this is the emails html content",
"text": "this is the emails text content",
"subject": "this is the subject",
"from_email": "gwapp@outlook.es",
"from_name": "GW",
"to": [
    {
        "email": "el_nota_5@hotmail.com",
        "name": "Alvaro"
    }
],
"headers": {

},
"track_opens": true,
"track_clicks": true,
"auto_text": true,
"url_strip_qs": true,
"preserve_recipients": true,

"merge": true,
"global_merge_vars": [

],
"merge_vars": [

],
"tags": [

],
"google_analytics_domains": [

],
"google_analytics_campaign": "...",
"metadata": [

],
"recipient_metadata": [

],
"attachments": [

]
},
   "async": false
}';

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $uri);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true );
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true );
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $postString);

$result = curl_exec($ch);

我想在Android上发布帖子请求,但我不知道我要把电子邮件json数组放在哪里

protected String doInBackground(String... params) {
        String path ="https://mandrillapp.com/api/1.0/messages/send.json";
        String json ="{...email information}"
        HttpClient httpclient = new DefaultHttpClient();
        HttpPost httppost = new HttpPost(path);
        try {
               //How i have to add te json string??
               httpclient.execute(httppost);

        } catch (ClientProtocolException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }
        return null;
    }

}

我如何在发布请求中发送带有电子邮件信息的json字符串?

1 个答案:

答案 0 :(得分:0)

尝试添加entityheader

httpost.setEntity(new StringEntity(json, "UTF8"));
httpost.setHeader("Content-Type", "application/json");