iOS では、Salesforce でホストされている残りのリソースを呼び出しています。
@HttpPost
global static String getEmail(String app, String BorrowerId, String BorrowerName) {
System.debug('hit the web service');
System.debug(app);
System.debug(BorrowerId);
System.debug(BorrowerName);
JSONGenerator gen = JSON.createGenerator(true);
gen.writeStartObject();
gen.writeStringField('email', 'woohoo');
gen.writeEndObject();
String jsonString = gen.getAsString();
System.debug(jsonString);
return jsonString;
}
返される jsonString は次のとおりです: { "email" : "woohoo" }
デバッグログに示されているように。ただし、iOS でこの応答を受信しようとすると:
- (void)request:(SFRestRequest *)request didLoadResponse:(id)jsonResponse
{
NSLog(@"json response: %@", jsonResponse);
NSString *retString = [NSString stringWithFormat:@"%@", jsonResponse];
NSLog(@"records: %@", retString);
}
次のエラーが表示されます: WARNING error parsing json: Error Domain=NSCocoaErrorDomain Code=3840 "The operation could't be completed. (Cocoa error 3840.)" (JSON テキストが配列またはオブジェクトで開始されておらず、フラグメントを許可するオプションが設定されていません.) UserInfo=0xcbaf230 {NSDebugDescription=JSON テキストが配列またはオブジェクトで開始されておらず、フラグメントを許可するオプションが設定されていません。}
また、Salesforce でオブジェクトを返そうとしましたが、同じエラーが返されます。データを NSString として読み戻すにはどうすればよいですか?
ありがとう