IOS JSON从Mandrill发送电子邮件

IOS JSON从Mandrill发送电子邮件,ios,json,email,mandrill,Ios,Json,Email,Mandrill,我有一个IOS应用程序,我想通过Mandrill发送电子邮件。我曾试图实现这一点,但它不起作用,我把自己弄糊涂了 按下按钮从IOS应用程序发送电子邮件时,我会记录此错误消息: {"status":"error","code":-1,"name":"ValidationError","message":"You must specify a key value"} 我的代码是: NSString *post = [NSString stringWithFormat:@"{\"key\":

我有一个IOS应用程序,我想通过Mandrill发送电子邮件。我曾试图实现这一点,但它不起作用,我把自己弄糊涂了

按下按钮从IOS应用程序发送电子邮件时,我会记录此错误消息:

{"status":"error","code":-1,"name":"ValidationError","message":"You must specify a key value"}
我的代码是:

    NSString *post = [NSString stringWithFormat:@"{\"key\": \"abcdefg123456\", \"raw_message\": \"From: me@mydomain.com\nTo: me@myotherdomain.com\nSubject: Some Subject\n\nSome content.}"];
NSData *postData = [post dataUsingEncoding:NSASCIIStringEncoding allowLossyConversion:YES];

NSString *postLength = [NSString stringWithFormat:@"%d", [postData length]];

NSMutableURLRequest *request = [[NSMutableURLRequest alloc] init];
[request setURL:[NSURL URLWithString:@"https://mandrillapp.com/api/1.0/messages/send-raw.json"]];
[request setHTTPMethod:@"POST"];
[request setValue:postLength forHTTPHeaderField:@"Content-Length"];
[request setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
[request setHTTPBody:postData];
    NSLog(@"Post: %@", post);

NSURLResponse *response;
NSData *POSTReply = [NSURLConnection sendSynchronousRequest:request returningResponse:&response error:nil];
NSString *theReply = [[NSString alloc] initWithBytes:[POSTReply bytes] length:[POSTReply length] encoding: NSASCIIStringEncoding];
NSLog(@"Reply: %@", theReply);
请告诉我哪里出了问题。

看来你忘了“内容”后面的\“

尝试按如下方式编写“post”变量:

NSString *post = [NSString stringWithFormat:@"{\"key\": \"abcdefg123456\", \"raw_message\": \"From: me@mydomain.com\nTo: me@myotherdomain.com\nSubject: Some Subject\n\nSome content.\"}"];

我希望能有所帮助。

谢谢,我确实漏掉了\after内容。此外,我还被要求在每个\n之前添加一个\