- 浏览: 1017238 次
- 性别:
- 来自: 广州
文章分类
最新评论
-
自己811005:
3e0cb37da14117f477ff4f2f94c729e ...
sql基础_Case_特殊函数_异常_脏读 -
elton_john007:
我用 Thread.currentThread().getId ...
android系统内存不足时,应用被系统回收发生了什么? -
lwbao28:
wl8269961 写道设置方法:window-->pr ...
android ctrl + 左键(鼠标左键)直接打开xml文件 -
androidwifi:
sendMessageDelayed 不能实现循环, 看看这个 ...
android 三种定时器的写法 -
zy19891111:
回答得无比的赞
android系统内存不足时,应用被系统回收发生了什么?
先看同步,默认服务器接受json数据,返回json数据
将下面的代码加入到某个类中,然后调用httpPost方法就可以了,这个是异步的
//同步post -(NSString *)postSyn:(NSString *)urlStr jsonData:(NSString *)jsonData{ NSLog(@"post_begin"); NSData* postData = [jsonData dataUsingEncoding:NSUTF8StringEncoding allowLossyConversion:YES];//数据转码; NSString *length = [NSString stringWithFormat:@"%d", [postData length]]; NSMutableURLRequest* request = [[NSMutableURLRequest alloc]init]; [request setURL:[NSURL URLWithString:urlStr]]; //设置地址 [request setHTTPMethod:@"POST"]; //设置发送方式 [request setTimeoutInterval: 20]; //设置连接超时 [request setValue:length forHTTPHeaderField:@"Content-Length"]; //设置数据长度 [request setValue:@"application/json" forHTTPHeaderField:@"Content-Type"]; //设置发送数据的格式 [request setValue:@"application/json" forHTTPHeaderField:@"Accept"]; //设置预期接收数据的格式 [request setHTTPBody:postData]; //设置编码后的数据 //发起连接,接受响应 NSHTTPURLResponse* urlResponse = nil; NSError *error = [[NSError alloc] init] ; NSData *responseData = [NSURLConnection sendSynchronousRequest:request returningResponse:&urlResponse error:&error]; NSString *responseString = [[NSString alloc] initWithData:responseData encoding:NSUTF8StringEncoding]; //返回数据,转码 NSLog(responseString); NSLog(@"post_end"); return responseString; }
将下面的代码加入到某个类中,然后调用httpPost方法就可以了,这个是异步的
-(void)httpPost:(NSString*)strcontext URL:(NSString*)urlstr{ strcontext = nil; NSLog(@"url--%@",urlstr); NSLog(@"param--%@",strcontext); assert(strcontext!=NULL); assert(urlstr!=NULL); NSData* postData = [strcontext dataUsingEncoding:NSUTF8StringEncoding allowLossyConversion:YES];//转码 NSString* postLength = [NSString stringWithFormat:@"%d",[postData length]]; NSMutableURLRequest* request = [[[NSMutableURLRequest alloc]init]autorelease]; [request setURL:[NSURL URLWithString:urlstr]]; //设置地址 [request setHTTPMethod:@"POST"]; //设置发送方式 [request setTimeoutInterval: 20]; //设置连接超时 [request setValue:postLength forHTTPHeaderField:@"Content-Length"]; //设置数据长度 [request setValue:@"application/json" forHTTPHeaderField:@"Content-Type"]; //设置发送数据的格式 [request setValue:@"application/json" forHTTPHeaderField:@"Accept"]; //设置预期接收数据的格式 [request setHTTPBody:postData]; //设置编码后的数据 NSURLConnection*conn=[[NSURLConnection alloc]initWithRequest:request delegate:self]; //设置类代理,注意要是self哦 if(conn) { NSLog(@"ConnectionSuccess"); [UIApplication sharedApplication].networkActivityIndicatorVisible=YES; [conn retain]; } else { NSLog(@"ConnectionFailed"); //informtheuserthatthedownloadcouldnotbemade } } #pragma mark------------------以下为相应的回调函数------------------------------- //收到响应时,会触发 -(void)connection:(NSURLConnection*)connection didReceiveResponse:(NSURLResponse*)response{ //注意这里将NSURLResponse对象转换成NSHTTPURLResponse对象才能去 NSHTTPURLResponse*httpResponse=(NSHTTPURLResponse*)response; if([response respondsToSelector:@selector(allHeaderFields)]){ NSDictionary*dictionary=[httpResponse allHeaderFields]; NSLog(@"didReceiveResponse1:%@",[dictionary description]); NSLog(@"didReceiveResponse2:%d",[response statusCode]); } } //链接错误 -(void)connection:(NSURLConnection*)connection didFailWithError:(NSError*)error{ //[selfperformSelectorOnMainThread:@selector(httpConnectEnd)withObject:nil waitUntilDone:NO]; NSLog(@"didFailWithError:%@",[error localizedDescription]); } //Calledwhenachunkofdatahasbeendownloaded. //接收数据每收到一次数据,会调用一次 -(void)connection:(NSURLConnection*)connection didReceiveData:(NSData*)data{ //Processthedownloadedchunkofdata. NSLog(@"didReceiveData_length:%d",[data length]); // NSLog(@"didReceiveData_data:%d",[data description]); [[self responseData] appendData:data]; NSLog(@"didReceiveData_data%@",[[NSString alloc]initWithData:data encoding:NSUTF8StringEncoding]); //[selfperformSelectorOnMainThread:@selector(updateProgress)withObject:nil waitUntilDone:NO]; } //接收结束 -(void)connectionDidFinishLoading:(NSURLConnection*)connection{ NSLog(@"connectionDidFinishLoading:%@",connection); //NSLog(@"%lld",received_); //[selfperformSelectorOnMainThread:@selector(httpConnectEnd)withObject:nil waitUntilDone:NO]; //Settheconditionwhichendstherunloop. NSString *responseString = [[NSString alloc] initWithData:[self responseData] encoding:NSUTF8StringEncoding]; [responseData release]; NSLog(@"responseString:%@",responseString); }
发表评论
-
ios 开发 笔记2
2012-09-27 11:06 946//字符串去前后空格 name = [name stri ... -
模态对话框 UIAlertView
2012-09-26 16:04 1042//显示双按钮对话框 - (void)showDia ... -
uiimageview uiscroll 图片的缩放
2012-09-25 18:01 1441-(void)loadImage{ ... -
backBarButtonItem 颜色 图片
2012-09-25 17:18 1437UIBarButtonItem *backIt ... -
发布应用 到 appstore
2012-09-21 16:12 1158一、首先去创建一个许可 打开苹果开发者网站,进入: ... -
UIScrollView 自动滚动相册
2012-09-21 09:34 933假如你用UIScrollView制作了一个横向的相册, ... -
UITabBarController 单击 再点击 双击
2012-09-19 19:21 5159UITabBarController //当选中 ... -
iphone 弹出选择对话框 UIActionSheet
2012-09-17 13:37 1714//弹出选择框 -(void)showOptionS ... -
iphone 弹出加载中对话框 UIAlertView
2012-09-07 18:10 1747//显示加载中对话框 - (void)dialogS ... -
iphone 开发 杂记
2012-09-06 20:05 1336//时间比较 NSDate * temp = [[NSD ... -
自定义uitableviewcell xib
2012-09-10 11:16 8804//网上教程很多,但是都没有将到点上,自己总结一下: ... -
添加 coredata 出现 is a forward declaration 错误
2012-09-05 19:42 1307So open up Xcode and look f ... -
coredata 最简单例子
2012-09-05 17:56 10270先按照网上的教程,建一个简单的带coredata的项目 ... -
ios 基础
2012-09-04 20:11 13NSDateFormatter *dateForma ... -
UITextField 关闭键盘
2012-08-29 12:00 1091UITextField tf; tf.del ... -
ARC
2012-08-27 14:31 1014当你为一个旧的工程添加ARC是,编译选项-fobjc- ... -
objective-c json 数据组装
2012-08-25 16:30 1206实际上是NSMutableDictionary的操作 ... -
苹果注册开发者账号过程
2012-08-21 14:20 1406首先你要注册一个apple id, 这个很简单,下载itun ... -
missing required architecture i386
2012-08-21 11:40 1475missing required architecture i ... -
IOS异步加载图片框架
2012-08-18 13:16 1908IOS异步加载图片框架 过发现一个好东东, SDWebImag ...
相关推荐
在Objective-C中,你可以使用NSURLSession创建一个POST请求,将手机号作为参数发送到服务器API。 ```objc NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:@...
Objective-C与JavaScript在iOS开发中的交互是Web开发与原生应用结合的重要技术,尤其是在使用UIWebView展示网页内容时。本文将深入探讨如何实现Objective-C与JavaScript的双向通信,以实现丰富的功能集成和优化用户...
Objective-C提供了NSURLSession和NSURLConnection等工具进行HTTP请求,学习者会了解如何发送GET和POST请求,处理JSON或XML数据。 8. **测试与发布**:了解如何使用Xcode内置的测试工具进行单元测试和UI测试,以及...
在实际应用中,你可能需要传递更复杂的数据类型,如JSON对象,或者从Objective-C端调用JavaScript函数。这都可以通过WKWebView的用户内容控制器和`WKScriptMessage`对象来实现。 总结来说,iOS中的JavaScript与...
`swift-Objective-C&Swift库可以轻松将NSDictionary映射到模型对象与Alamofire完美配合`这一标题揭示了一个高效的解决方案,它结合了Objective-C和Swift语言的优势,使得从JSON数据到自定义模型对象的转换变得简单...
在处理JSON数据时,iOS提供了内置的`NSJSONSerialization`类,用于将JSON字符串转换为Objective-C对象(如字典或数组)以及将Objective-C对象转换回JSON字符串。当你从服务器获取JSON响应后,可以使用`...
3. **模型绑定**:ResourceKit具有强大的模型绑定功能,能够自动将JSON响应数据映射到Objective-C对象,极大地简化了数据解析过程。只需定义对应的Model类,ResourceKit会自动处理JSON到对象的转换。 4. **错误处理...
Objective-C是iOS开发的传统语言,它基于C语言并添加了面向对象的特性。理解它的语法和类的继承、协议、类别等概念是必要的。 Swift作为现代的Apple编程语言,以其简洁、安全的特性受到开发者喜爱。Swift的语法比...
- **Objective-C**:Objective-C是C语言的超集,增加了面向对象特性,是Apple的iOS和macOS平台的主要开发语言。 - **Web服务**:Web服务是一种通过HTTP协议提供数据的软件,可以是RESTful API、SOAP服务或其他形式...
Objective-C是苹果平台的主要编程语言,它是C语言的超集,添加了面向对象的特性,如类、消息传递和协议。在Objective-C中,API封装通常涉及创建一个或多个类,这些类负责与远程服务器通信,处理HTTP请求和响应,以及...
总的来说,Swift、JavaScript和Objective-C之间的交互涉及到多种技术,包括`WKWebView`、`WKScriptMessageHandler`、`UIWebView`、JSON序列化和`@objc`协议。理解并熟练掌握这些技术对于构建混合式应用至关重要,...
"msgraph-training-ios-objectivec-master.zip"压缩包提供了使用Objective-C进行Microsoft Graph API集成的示例项目,这对于熟悉iOS开发以及希望深入理解如何在iOS应用中处理邮件功能的开发者来说非常有用。...
如果需要POST请求中包含文件,可以使用`multipartFormRequestWithMethod:URLString:parameters:constructingBodyWithBlock:success:failure:`(Objective-C)或`uploadTask(with:method:URLString:parameters:...
它为Objective-C开发者提供了一套简单易用的接口,用于处理网络请求,如GET、POST等,并支持上传和下载任务,JSON解析以及自定义请求头等功能。AFNetworking的灵活性和强大的功能使其成为许多iOS应用的基础部分。 ...
Objective-C是C语言的超集,增加了面向对象的特性,如类、继承、多态等。在iOS中,Foundation框架提供了一系列的网络相关的类,如NSData、NSURL、NSURLConnection等,它们是进行网络操作的基本工具。例如,NSData...
6. **JSON解析**:网络数据通常以JSON格式传输,学会将接收到的数据解析为Objective-C对象。 7. **错误处理**:如何捕获和处理网络请求过程中的异常和错误。 8. **安全性**:HTTPS连接的设置,SSL/TLS证书验证,以及...
在iOS应用开发中,Objective-C和Swift是两种主要的编程语言。它们各自有着独特的特性和优点,但在实际项目中,开发者可能需要根据设备型号来实现特定的功能或优化。本篇文章将探讨如何使用Python来轻松地区分...
学会发送GET、POST请求,处理JSON或XML数据,以及实现网络状态的监控,对开发网络依赖的应用至关重要。 最后,对于用户体验的重视,使iOS开发者需要了解Auto Layout和Size Classes,用于实现不同设备和屏幕尺寸下的...
Objective-C是苹果公司开发的面向对象的编程语言,它是C语言的超集,支持Smalltalk风格的消息传递机制。在iOS应用开发中,Objective-C是早期的主要编程语言,尽管现在Swift更为流行,但Objective-C仍然有很多在用的...
3. **数据模型和解析**:JSON是RESTful服务常用的数据交换格式,Objective-C的NSJSONSerialization类能将接收到的JSON数据转化为Objective-C对象,便于进一步处理。同时,需要定义相应的Model类来存储学生和成绩信息...