【发布时间】:2013-11-22 11:16:25
【问题描述】:
嗨,伙计们:D 请向我解释我应该如何在你的课堂上使用 NSDictionary(在这个page)。我应该说什么request.HTTPBody = [param dataUsingEncoding:NSUTF8StringEncoding]; that my program work correctly?
这是我的代码
#import "MainClass.h"
@implementation MainClass
- (IBAction)actionButton:(id)sender {
NSMutableURLRequest* request = [NSMutableURLRequest requestWithURL:[NSURL
URLWithString:@"https://login.dnevnik.ru"]
cachePolicy:NSURLRequestUseProtocolCachePolicy timeoutInterval:15.0];
request.HTTPMethod = @"POST";
NSString *username = _loginLogin.text;
NSString *password= _passwordLogin.text;
GlobalUserName = username;
GlobalPassword = password;
NSDictionary *param = @{@"Username": GlobalUserName,@"password": GlobalPassword};
/*NSUserDefaults *loginData = [NSUserDefaults standardUserDefaults];
NSString *username1 = [loginData objectForKey:@"username"] ;
NSString *password1 = [loginData objectForKey:@"password"];*/
//Параметры посылаемого запроса
request.HTTPBody = [param dataUsingEncoding:NSUTF8StringEncoding];
[request setValue:@"application/x-www-form-urlencoded;charset=UTF-8"
forHTTPHeaderField:@"Content-Type"];
NSURLConnection *connection = [[NSURLConnection alloc] initWithRequest:request delegate:self];
if (connection) {
_otvet.text = @"Соединение установлено";
NSLog(@"ama ama");
}
else
{
_otvet.text=@"Проблема с соединением";
NSLog(@"ama ama faza");
}
}
- (void) connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse
*)response
{
[receivedData setLength:0];
}
- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data
{
[receivedData appendData:data];
}
- (void)connection:(NSURLConnection *)connection didFailWithError:(NSError *)error {
UIAlertView *errorAlert = [[UIAlertView alloc]
initWithTitle:@"Ошибка" message:@"Пожалуйста, проверьте
соединение с Интернетом." delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil];
[errorAlert show];
}
- (void)connectionDidFinishLoading:(NSURLConnection *)connection {
NSString * data = [[NSString alloc] initWithData:receivedData
encoding:NSUTF8StringEncoding];
if ([data isEqualToString: @"OK"]) {
_otvet.text = @"Вы успешно залогинены.";
NSLog(@"Вы успешно залогинены.");
}
else
{
NSLog(@"Ошибка авторизации %@,%@",GlobalUserName,GlobalPassword);
}
}
在我的情况下,编译时 xcode 说
“NSDictionary”没有可见的@interface 声明选择器 'dataUsingEncoding:'
【问题讨论】:
-
我知道这是旧的。但希望你能回应。你在 Mainclass.h 中定义了什么 GlobalUserName 和 GlobalPassword
标签: php html ios objective-c nsdictionary