Здесь я просто описать как использовать метод POST.
1. Установить строку с указанием фактического имени пользователя и пароля.
NSString *post = [NSString stringWithFormat:@"&Username=%@&Password=%@",@"username",@"password"];
2. Encode пост строку с помощью NSASCIIStringEncoding
, а также после строки вам необходимо отправить в формате NSData.
NSData *postData = [post dataUsingEncoding:NSASCIIStringEncoding allowLossyConversion:YES];
Необходимо отправить фактическую длину ваших данных. Вычислите длину строки сообщения.
NSString *postLength = [NSString stringWithFormat:@"%d",[postData length]];
3. Создать URLRequest со всеми свойствами, как HTTP
метод, HTTP поля заголовка с длиной почтовой строки. Создайте объект URLRequest
и инициализируйте его.
NSMutableURLRequest *request = [[[NSMutableURLRequest alloc] init] autorelease];
Укажите адрес, на который вы хотите отправить данные по этому запросу.
[request setURL:[NSURL URLWithString:[NSString stringWithFormat:@"http://www.abcde.com/xyz/login.aspx"]]];
Теперь установите HTTP метод (POST или GET). Напишите эти строки так, как в ваш код.
[request setHTTPMethod:@"POST"];
HTTP
заголовок поля с длиной данных сообщения.
[request setValue:postLength forHTTPHeaderField:@"Content-Length"];
Также задано значение Закодированное значение для заголовка HTTP.
[request setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"Current-Type"];
Установите HTTPBody
в URLRequest с PostData.
[request setHTTPBody:postData];
4. Теперь создадим объект URLConnection. Инициализируйте его с помощью URLRequest.
NSURLConnection *conn = [[NSURLConnection alloc]initWithRequest:request delegate:self];
Это возвращает инициализированное соединение URL-адрес и начинает загружать данные для запроса URL. Вы можете проверить, действительно ли вы подключаетесь URL
или не используете только if/else заявление, как показано ниже.
if(conn)
{
NSLog(@”Connection Successful”)
}
else
{
NSLog(@”Connection could not be made”);
}
5. Для получения данных из запроса HTTP, вы можете использовать методы делегата, предоставляемые URLConnection Class Reference. Методы делегатов приведены ниже.
- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData*)data
выше метода используются для получения данных, которые мы получаем, используя сообщению метода.
- (void)connection:(NSURLConnection *)connection didFailWithError:(NSError *)error
Этот метод можно использовать для получения отчета об ошибке в случае подключение не к серверу.
- (void)connectionDidFinishLoading:(NSURLConnection *)connection
Описанный выше метод используется для обработки данных после того, как соединение сделано успешно.
нет, я просто хочу кода содержимого тела для выше PHP скрипт, я в виду, что делать я должен использовать, это '' NSDictionary' или NSArray' или сочетание этих двух.? –