post メソッドを使用して json オブジェクトをサーバーに送信しています。以下は私のコードです。
コード
-(IBAction)ButtonClicked:(id)sender{
NSMutableDictionary *dic=[[NSMutableDictionary alloc] initWithCapacity:1];
[dic setValue:@"ra" forKey:@"Owner"];
[dic setValue:@"YES" forKey:@"IsMale"];
[dic setValue:[NSNumber numberWithInt:2] forKey:@"ImageId"];
[dic setValue:@"abc@pikesol.com1" forKey:@"EmailAddress"];
[dic setValue:@"12341" forKey:@"Password"];
[dic setValue:@"ra1" forKey:@"FullName"];
[dic setValue:@"12-03-1987" forKey:@"DOB"];
NSString *newurlString=[dic JSONRepresentation];
NSString *url=@"https://sample.com/Discover/create";
NSData *postData = [newurlString dataUsingEncoding:NSUTF8StringEncoding allowLossyConversion:YES];
NSString *postLength = [NSString stringWithFormat:@"%d", [postData length]];
NSLog(@"urlString::%@",newurlString);
NSLog(@"postLength::%@",postLength);
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:url] cachePolicy:NSURLCacheStorageNotAllowed timeoutInterval:300];
[request setHTTPMethod:@"POST"];
[request setValue:postLength forHTTPHeaderField:@"Content-Length"];
[request setValue:@"text/plain" forHTTPHeaderField:@"Content-Type"];
[request setHTTPBody:postData];
NSURLConnection *theConnection =[[NSURLConnection alloc] initWithRequest:request delegate:self];
if( theConnection )
{
webData = [[NSMutableData data] retain];
}
else
{
NSLog(@"theConnection is NULL");
}
}
- (void) connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response
{
NSHTTPURLResponse *httpResponse = (NSHTTPURLResponse*)response;
int code = [httpResponse statusCode];
NSLog(@"code is : %d",code);
}
- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data
{
[webData appendData:data];
}
- (void)connectionDidFinishLoading:(NSURLConnection *)connection
{
NSString* newStr = [[[NSString alloc] initWithData:webData
encoding:NSUTF8StringEncoding] autorelease];
NSLog(@"%@",newStr);
}
私の問題は、応答コード 405 が表示されることです。問題がどこにあるのかわかりません。親切に助けてください。事前に感謝します。詳細が必要な場合はお知らせください。