当前位置: 首页 > news >正文

建设公司网站靠谱吗/企业宣传推广

建设公司网站靠谱吗,企业宣传推广,新公司简介模板范文,wordpress添加百度自动推送今天在公司开始着手做了一个项目,要和网络接号对接的,有以下一点点小心得,上来分享一下: 首先说ios的网络请求,方式有很多种,我把它分了两种,一种是外框架型,一种是内框架;前都是应用了官方API以外的框架,后者则是相对; -(void)testRequest{ NSLog("test request...&qu…

今天在公司开始着手做了一个项目,要和网络接号对接的,有以下一点点小心得,上来分享一下:

首先说ios的网络请求,方式有很多种,我把它分了两种,一种是外框架型,一种是内框架;前都是应用了官方API以外的框架,后者则是相对;

 

-(void)testRequest
{
NSLog(@"test request...");
NSString *postUrl = @"url";
NSMutableDictionary *dlist = [[NSMutableDictionary alloc] init];


[dlist setObject:@"value" forKey:@"key"];
....

NSString *jsonStrPost = [self sendRequestTo:[NSURL URLWithString:postUrl] usingVerb:@"POST" withParameters:dlist];
NSLog(@"do post: jsonStrPost = %@", jsonStrPost);
}

上面用的就是有点像json的做法,ios的,呵!

下面再说另一种做法:

//quest
/*
*
* url:请求地址
* verb:请求方式
* parameters:请求参数
*/
-(NSString *)sendRequestTo:(NSURL *)url usingVerb:(NSString *)verb withParameters:(NSDictionary *)parameters{
NSString *jsonStr = nil;
NSData *body = nil;
NSMutableString *params = nil;
NSString *contentType = @"text/html; charset=utf-8";
NSURL *finalURL = url;
if(nil != parameters){
params = [[NSMutableString alloc] init];
for(id key in parameters){
NSString *encodedkey = [key stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];

CFStringRef value = (__bridge CFStringRef)[[parameters objectForKey:key] copy];
CFStringRef encodedValue = CFURLCreateStringByAddingPercentEscapes(kCFAllocatorDefault, value,NULL,(CFStringRef)@";/?:@&=+$", kCFStringEncodingUTF8);
[params appendFormat:@"%@=%@&", encodedkey, encodedValue];
CFRelease(value);
CFRelease(encodedValue);
}
[params deleteCharactersInRange:NSMakeRange([params length] - 1, 1)];
}
//
if([verb isEqualToString:@"POST"]){
contentType = @"application/x-www-form-urlencoded; charset=utf-8";
body = [params dataUsingEncoding:NSUTF8StringEncoding];
}else{
if(nil != parameters){
NSString *urlWithParams = [[url absoluteString] stringByAppendingFormat:@"?%@", params];
finalURL = [NSURL URLWithString:urlWithParams];
}
}
NSMutableDictionary *headers = [[NSMutableDictionary alloc] init];
[headers setValue:contentType forKey:@"Content-Type"];
[headers setValue:@"text/html" forKey:@"Accept"];
[headers setValue:@"no-cache" forKey:@"Cache-Control"];
[headers setValue:@"no-cache" forKey:@"Pragma"];
[headers setValue:@"close" forKey:@"Connection"];
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:finalURL cachePolicy:NSURLRequestUseProtocolCachePolicy timeoutInterval:60.0];
[request setHTTPMethod:verb];
[request setAllHTTPHeaderFields:headers];
if(nil != parameters){
[request setHTTPBody:body];
}
params = nil;
//
NSURLResponse *response;
NSError *error = nil;
NSData *responseData = [NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&error];
if(error){
NSLog(@"something is wrong: %@", [error description]);
}else{
if(responseData){
jsonStr = [[NSString alloc] initWithData:responseData encoding:NSUTF8StringEncoding];
}
}
return jsonStr;
}

 NSString *jsonStrPost = [self sendRequestTo:[NSURL URLWithString:postUrl] usingVerb:@"POST" withParameters:dlist];

下面是第三种了~有什么疑问可以留言,偶会常看博客的了!

NSString *requestString = [NSString stringWithFormat:@"url"];
// 数据内容转换为UTF8编码,第二个参数为数据长度
// NSData *requestData = [NSData dataWithBytes:[requestString UTF8String] length:[requestString length]];
// 请求的URL地址
NSMutableURLRequest *request = [[NSMutableURLRequest alloc] initWithURL:[NSURL URLWithString:requestString]];
NSLog(@"%@\n",requestString);
// 设置请求方式
//[request setHTTPMethod:@"get"];
// 设置请求内容
//[request setHTTPBody:requestData];
// 设置请求头声明
[request setValue:@"text/xml" forHTTPHeaderField:@"Content-type"];
// 执行请求
NSData *data = [NSURLConnection sendSynchronousRequest:request returningResponse:nil error:nil];


// 输出返回数据
NSString *returnString = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
NSLog(@"%@", returnString);

上面三种方法都有POST和GET两种方式的其实他们也是差不多的,不过写法不一样而已

第四种用的是一个开源的框架,要导的包有点多,要注意了哦~

ASIFormDataRequest,或ASIHTTPRequest,这两个东西不错的哦,我这次的项目就是用这个东西做的

ASIFormDataRequest:

这个要引入的包有:(明天补上)

ASIFormDataRequest* req=[[ASIFormDataRequest alloc] init];
NSString* s_url=@"url";
req = [[ASIFormDataRequest alloc] initWithURL:[NSURL URLWithString:s_url]];
[req setRequestMethod:@"POST"];//@"GET""POST"
[req setDelegate:self];

[req setPostValue:value forKey:key];
.....


[req startAsynchronous];

结果返回时会自动调用以下方法

- (void)requestFinished:(ASIHTTPRequest *)request
{
int i = 0;
//乱码的处理,呵
NSString * temp = [[[NSString alloc]initWithData:[request responseData] encoding:NSUTF8StringEncoding]autorelease];
NSArray * ttemp = [temp componentsSeparatedByString:@","];


}


ASIHTTPRequest


ASIHTTPRequest是简单易用的,它封装了CFNetwork API。使得与Web服务器通信变得更简单。它是用Objective-C编写的,可以在MAC OS X和iPhone应用中使用。

它适用于执行基本的HTTP请求和互动(或者说是反馈)。ASIFormDataRequest子类可以简单的实现提交数据和文件。使用multipart/form-data

提供了以下:

一个从web服务器提交和获取数据的接口

直接下载数据到内存或者本地文件系统里

能够从本地提交文件,作为post数据的一部分。兼容HTML file input mechanism

可以访问和修改http请求和响应header

获得上传下载的进度信息

异步请求和队列,自动管理上传下载队列机制

cookie 支持

请求和响应的gzip支持

代理请求

 

ASIHTTPRequest设置

在iphone 项目中使用ASIHTTPRequest

1、添加一些必要的文件,复制以下文件到项目中去

ASIHTTPRquestConfig.h

ASInputStream.h

ASInputStream.m

ASIHTTPRequest.h

ASIHTTPRequest.h

ASINSStringAdditions.h

ASINSStringAdditions.m

ASIFormDataRequest.h

ASIFormDataRequest.m

ASINetworkQueue.h

ASINetworkQueue.m

iphone项目还必须包含以下文件

ASIAuthenticationDialog.h

ASIAuthenticationDialog.m

一个版本的Reachability类


添加必要的框架到项目中去

CFNetwork.framework

SystemConfiguration.framework

libz.1.2.3.dylib


配置Reachability

在iphone上,ASIHTTPRequest使用Apple的Reachability类。

Reachability有两个版本,他们都能在ASIHTTPRequest发行文件的Reachability文件夹中找到。

2.0版本是最新的办迸。如果你的项目是基于iphone os 3.x和更新的系统,你应该使用2.0版本的。包括.h和.m文件。保证在ASIHTTPRequestConfig.h文件中REACHABILITY_20_API的值为1

1.5是个老版本,它和iphone os 2.2.1-iphone os 3.0兼容。保证在ASIHTTPRequestConfig.h文件中REACHABILITY_20_API的值为0


在mac ox x项目中使用AHIHTTPRequest

为了在Mac os x项目中使用ASIHTTPRequest,你需要导入以下:

SystemConfiguration.framework + zlib

CoreService.framework

在Mac OS X上,CFNetwork 是CoreServices框架的一部分。除非你写的是基于控制台的应用程序


转载于:https://www.cnblogs.com/chiefCTO/archive/2012/03/30/2426103.html

http://www.jmfq.cn/news/4969585.html

相关文章:

  • 网站备案提交资料/全网优化推广
  • 做海鲜团购网站/独立站怎么搭建
  • 合肥网站搜索优化/百度q3财报2022
  • 什么网站程序可以做抽奖页面/谷歌seo优化推广
  • 广西建设工程质检安全网站/如何做网页制作
  • 早期做的网站支持现在的网速吗/营销策划是做什么
  • app在线制作网站/怎么注册百度账号
  • 用vs做网站后台/网站搜索引擎优化方法
  • 微商/宁德seo培训
  • 东莞长安网站推广公司/微信客户管理系统
  • 网站开发销售员/semifinal
  • wordpress 分类目录树/石家庄seo管理
  • 百度公司给做网站吗/交易平台
  • 婚纱网站怎么做/百度推广开户渠道
  • 深圳设计公司上市成功有几家/陕西整站关键词自然排名优化
  • 无锡自助做网站/中国搜索引擎市场份额
  • 石景山青岛网站建设/世界十大搜索引擎及地址
  • 网站开发有哪些模块/seo需要掌握什么技能
  • 菠菜网站建设条件/百度高级搜索首页
  • 外贸网站 服务器/品牌整合营销推广
  • 出国越南做网站8000保底/网络媒体有哪些
  • 网站建设整合营销/抖音seo运营模式
  • 个人网站有什么用/seo技巧分享
  • 金融网站怎么做/google国际版入口
  • 产品介绍网站源码/东莞做网站的公司吗
  • 环评怎么在网站做公示/网络安全培训最强的机构
  • 做网站有那几种末班/如何在百度推广自己的产品
  • 怎样在百度上做网站/新产品推广方式有哪些
  • 做任务的正规网站/中企动力做网站推广靠谱吗
  • 珠海网站制作服务/微信软文案例