5

prestashop モードを使用して、Web サイトで新しい顧客を作成しようとしているこのコードがあります。しかし、応答でエラーが発生し続けます

NSString *xmlPath = [[NSBundle mainBundle] pathForResource:@"Login" ofType:@"xml"];

    NSString *xmlStr = [[NSString alloc] initWithContentsOfFile:xmlPath encoding:NSUTF8StringEncoding error:nil];

     NSString *encodedurlstring = (__bridge NSString*) CFURLCreateStringByAddingPercentEscapes (NULL, (__bridge CFStringRef) xmlStr, NULL, (CFStringRef)@"!*'();:@&=+$,/?%#[]",kCFStringEncodingUTF8);

    NSString *urlStr = [NSString stringWithFormat:@"http://passkey:@farma-web.it/api/customers/?Xml=%@",encodedurlstring];

    NSURL *webURL = [NSURL URLWithString:urlStr];
    NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:webURL];

    [request setHTTPMethod:@"POST"];
    [request setValue: @"text/xml" forHTTPHeaderField: @"Content-Type"];


    NSData *returnData = [NSURLConnection sendSynchronousRequest:request returningResponse:nil error:nil];
    NSString *response = [[NSString alloc] initWithData:returnData encoding:NSUTF8StringEncoding];

    NSLog(@"response - %@",response);

私が添付したXMLは

<prestashop>

<customers>

<customer>**I DO NOT KNOW WHAT TO WRITE HERE**</customer>

<email>abc@abc.com</email>

<passwd>12344321</passwd>

<firstname>ABC</firstname>

<lastname>DEF</lastname>

</customers>

</prestashop>

私が得ている応答は

<?xml version="1.0" encoding="UTF-8"?>
<prestashop xmlns:xlink="http://www.w3.org/1999/xlink">
<errors>
<error>
<message><![CDATA[Internal error. To see this error please display the PHP errors.]]></message>
</error>
</errors>
</prestashop>
4

2 に答える 2

0

「顧客」は独立したフィールドではなく、名、姓、電子メールなどの他のすべてのフィールドのコンテナです。

顧客を作成する最善の方法は、空白のシートを取得してデータを入力することです: http://your-prestashop.com/api/customers?schema=blank

于 2013-08-21T07:11:49.853 に答える