0

サーバーに保存されている plist ファイルにリモートで書き込む方法があるかどうか疑問に思っています。ファイルがあるディレクトリには書き込みアクセス権がありますが、新しいデータをプッシュできないようです。私のコードは次のとおりです。

NSString *accountURL = [NSString stringWithFormat:@"http://www.mywebsite.com//%@.plist",txtUsername.text];
NSURL *url = [NSURL URLWithString:accountURL];
NSMutableDictionary *account = [[NSMutableDictionary alloc] initWithContentsOfURL:url];

    [account setObject:@"TEST" forKey:@"LastLogin"];
if ([account writeToURL:url atomically:NO]){
NSLog(@"saved");
}else{
NSLog(@"not saved");
}

問題なく読み取ることができるため、plistファイルが存在します。ファイルに書き込めません。

別のメモとして、アカウントがサーバーに保存される場合、これは AppStore にも適していますか?

4

2 に答える 2

2

この Web サービスをこのように解析し、パーサーのデリゲート メソッドを実装する必要があります。

-(void)startParsingForLoginUser:(NSString*)UserName
{
    NSString *urlString = [NSString stringWithFormat:@"http://www.mywebsite.com//%@.plist",UserName]];
    NSURL *xmlURL = [NSURL URLWithString:urlString];
    NSMutableURLRequest *request = [[[NSMutableURLRequest alloc] initWithURL:xmlURL cachePolicy:NSURLRequestUseProtocolCachePolicy timeoutInterval:30.0]autorelease];
    NSURLResponse *returnedResponse = nil;
    NSError *returnedError = nil;
    NSData *itemData  = [NSURLConnection sendSynchronousRequest:request returningResponse:&returnedResponse error:&returnedError];
    xmlParser = [[NSXMLParser alloc] initWithData:itemData];        
    [xmlParser setDelegate:self];
    [xmlParser parse];
}

そして、サーバーにplistファイルを書き込むことができます。さらに、POST、PUT などの解析メソッドを使用することもできます。また、サーバーに SynchronousRequest を送信することもできます。

于 2010-12-27T05:39:14.280 に答える
1

読み取り専用は簡単です。何かを書き始めるとすぐに、サーバー、アプリケーション、ユーザーのアクセス許可を取得します。

問題を解決するには、ユーザーとアプリケーションを認証し、権限を確認してファイルを保存する Web サービスを作成する必要があります。通常は、iPhone アプリからの POST または PUT を受け入れるサーバーになります (ブラウザがアップロードに対して行うことと同様)。

于 2010-08-26T04:27:37.547 に答える