1、准备阶段
NSString *urlString = [NSString stringWithFormat:@"http://jssb.zust.edu.cn/androidLogin.action"];
NSMutableURLRequest *request = [[[NSMutableURLRequest alloc] init] autorelease];
[request
setURL:[NSURL URLWithString:urlString]];
[request setHTTPMethod:@"POST"];
2、设置头
NSString *contentType = [NSString stringWithFormat:@"text/xml"];
[request
addValue:contentType forHTTPHeaderField: @"Content-Type"];
3、数据内容体的设定
NSMutableData *postBody = [NSMutableData data];
[postBody appendData:[[NSString stringWithFormat:@"id=%@&password=%@&role=%@",@"admin02",@"admin02",@"dean"] dataUsingEncoding:NSUTF8StringEncoding]];
[request setHTTPBody:postBody];
XML传送的时候:
NSMutableData *postBody = [NSMutableData
data];
[postBody appendData:[[NSString stringWithFormat:@"<Request Action=\"Login\">"]
dataUsingEncoding:NSUTF8StringEncoding]];
[postBody appendData:[[NSString
stringWithFormat:@"<Body>"]
dataUsingEncoding:NSUTF8StringEncoding]];
[postBody appendData:[[NSString stringWithFormat:@"<Username>wangjun</Username>"]
dataUsingEncoding:NSUTF8StringEncoding]];
[postBody appendData:[[NSString
stringWithFormat:@"<Password>password</Password>"]
dataUsingEncoding:NSUTF8StringEncoding]];
[postBody appendData:[[NSString stringWithFormat:@"<PlatformID>2</PlatformID>"]
dataUsingEncoding:NSUTF8StringEncoding]];
[postBody appendData:[[NSString
stringWithFormat:@"<PlatformVersion>3.1.3</PlatformVersion>"]
dataUsingEncoding:NSUTF8StringEncoding]];
[postBody appendData:[[NSString stringWithFormat:@"<TaskViewerName>IP
1.3</TaskViewerName>"] dataUsingEncoding:NSUTF8StringEncoding]];
[postBody appendData:[[NSString
stringWithFormat:@"<TaskViewerVersion>3</TaskViewerVersion>"]
dataUsingEncoding:NSUTF8StringEncoding]];
[postBody appendData:[[NSString
stringWithFormat:@"</Body>"]
dataUsingEncoding:NSUTF8StringEncoding]];
[postBody appendData:[[NSString
stringWithFormat:@"</Request>"]
dataUsingEncoding:NSUTF8StringEncoding]];
//post
[request setHTTPBody:postBody];
4、请求响应
NSHTTPURLResponse* urlResponse = nil;
NSError *error = [[NSError alloc] init];
NSData *responseData = [NSURLConnection sendSynchronousRequest:request returningResponse:&urlResponse error:&error];
NSString *result = [[NSString alloc] initWithData:responseData encoding:NSUTF8StringEncoding];
自己封装http请求工具类,用与淘宝:
.h文件
//
// HttpUtil.h
// TaoBaoTest
//
// Created by 杭 鲍 on 12-5-7.
// Copyright (c) 2012年 __MyCompanyName__. All rights reserved.
//
//http请求工具类,用来进行httpget以及httppost请求,返回值是一个String类型
#import <Foundation/Foundation.h>
@interface HttpUtil : NSObject {
}
-(NSString *)httpGet:(NSString *)httpUrl;//传入需要请求的url
-(NSString *)httpPost:(NSString *)httpUrl:(NSString *)postData;//传入需要请求的url以及需要post的参数值
@end
.m文件
#import "HttpUtil.h"
@implementation HttpUtil
-(NSString *)httpGet:(NSString *)httpUrl{
NSMutableURLRequest *request =[[NSMutableURLRequest alloc] init];
[request setURL:[NSURL URLWithString:httpUrl]];
[request setHTTPMethod:@"GET"];
// NSString *contentType = [NSString stringWithFormat:@"text/xml"];
NSString *contentType = [NSString stringWithFormat:@"application/x-www-form-urlencoded"];
[request addValue:contentType forHTTPHeaderField: @"Content-Type"];
NSHTTPURLResponse* urlResponse = nil;
NSError *error = [[NSError alloc] init];
NSData *responseData = [NSURLConnection sendSynchronousRequest:request returningResponse:&urlResponse error:&error];
NSString *result = [[NSString alloc] initWithData:responseData encoding:NSUTF8StringEncoding];
return result;
}
-(NSString *)httpPost:(NSString *)httpUrl:(NSString *)postData{
NSMutableURLRequest *request =[[NSMutableURLRequest alloc] init];
[request setURL:[NSURL URLWithString:httpUrl]];
[request setHTTPMethod:@"POST"];
NSString *contentType = [NSString stringWithFormat:@"application/x-www-form-urlencoded"];
[request addValue:contentType forHTTPHeaderField: @"Content-Type"];
NSMutableData *postBody = [NSMutableData data];
[postBody appendData:[[NSString stringWithFormat:postData] dataUsingEncoding:NSUTF8StringEncoding]];
[request setHTTPBody:postBody];
NSHTTPURLResponse* urlResponse = nil;
NSError *error = [[NSError alloc] init];
NSData *responseData = [NSURLConnection sendSynchronousRequest:request returningResponse:&urlResponse error:&error];
NSString *result = [[NSString alloc] initWithData:responseData encoding:NSUTF8StringEncoding];
return result;
}
@end
<!--EndFragment-->
分享到:
相关推荐
在本文中,我们将深入探讨如何在OSX服务端与iPhone客户端之间实现网络通信,主要关注CFNETWORK和NSStream这两个关键的iOS及Mac OS X网络编程框架。这些技术使得应用程序能够处理HTTP、FTP、TCP/IP和其他网络协议,...
在iOS开发中,HTTP协议是应用层网络通信的重要方式,用于客户端(如iPhone应用程序)与服务器之间传输数据。本文将详细解析给定的文件中关于`iPhone HTTP`工具类的实现,包括同步GET、POST以及异步GET和POST请求。 ...
详情了解:http://blog.csdn.net/softlgh/article/details/40507623 没有积分的也可从https://pan.baidu.com/s/1co0TaQ5KAFFc-MBdrIA6MA下载 后面还会上传最近两年做过的一些声音信号处理项目:声波智能锁,baby ...
性能非常强,没有运行不了的平台,而且通过内存池优化,长时间解码不再分配新内存,可7*24小时运行 可支持任何平台,常见的平台android , iphone, windows, linux, arm, mipsel, stm32都有示例。 详情了解:...
1. **通信方式**:文档中提到的通信方式可能包括HTTP协议,这是互联网上应用最广泛的一种网络通信协议,用于客户端(如移动应用)向服务器发送请求并接收响应。通常,HTTP协议被用于传输JSON或XML等数据格式,这在...
可支持任何平台,常见的平台android, iphone, windows, linux, arm, mipsel, stm32都有示例。 详情了解:http://blog.csdn.net/softlgh/article/details/40507623 也可从http://pan.baidu.com/s/1mi00vhe下载 后面还...
iphone, windows, linux, arm, mipsel, stm32都有示例。 详情了解:http://blog.csdn.net/softlgh/article/details/40507623 也可从http://pan.baidu.com/s/1mi00vhe下载 后面还会上传最近两年做过的一些声音信号...
可支持任何平台,常见的平台android, iphone, windows, linux, arm, mipsel, stm32都有示例。 详情了解:http://blog.csdn.net/softlgh/article/details/40507623 没有积分的也可从...
在iOS应用开发中,HTTP下载是一项常见的任务,特别是在构建移动应用程序时,比如iPhone应用。HTTP(超文本传输协议)是一种用于传输数据的网络协议,广泛应用于网页浏览和数据下载。本教程将深入探讨如何在iPhone...
20米以上,通过设备传输距离可在50米以上 性能非常强,没有运行不了的平台,而且通过内存池优化,长时间解码不再分配新内存,可7*24小时运行 可支持任何平台,常见的平台android , iphone, windows, linux, arm, ...
详情了解:http://blog.csdn.net/softlgh/article/details/40507623 没有积分的也可从https://pan.baidu.com/s/1co0TaQ5KAFFc-MBdrIA6MA下载 后面还会上传最近两年做过的一些声音信号处理项目:声波智能锁,baby ...
详情了解:http://blog.csdn.net/softlgh/article/details/40507623 没有积分的也可从https://pan.baidu.com/s/1co0TaQ5KAFFc-MBdrIA6MA下载 后面还会上传最近两年做过的一些声音信号处理项目:声波智能锁,baby ...
首先,我们要明确的是,iPhone聊天应用程序的核心在于实时通信。为了实现这一目标,我们需要选择一种适合的通信协议。在iOS开发中,最常用的实时通信协议是WebSocket,它提供了全双工、低延迟的连接,能够实现服务器...
《iPhone应用程序编程指南》作为指导书籍,提供了构建iPhone应用程序所需的知识,包括但不限于用户界面设计、应用生命周期管理、数据存储、网络通信等方面的内容。 在进行iPhone编程时,首先需要熟悉iOS操作系统...
这通常涉及到网络通信协议,如HTTP、TCP/IP或者WebSocket,以及数据同步机制。 3. **文件结构**: - `iPhoneQQ.exe`:这是Windows操作系统下的可执行文件,可能是iPhoneQQ挂号器的主要程序,用于启动和运行整个...
在iPhone应用中,我们可以使用苹果提供的Foundation框架中的`NSURLSession`类来实现HTTP通信。`NSURLSession`是iOS 7及更高版本中推荐的网络编程接口,它可以处理HTTP、HTTPS以及FTP等协议。相比于旧版的`...
1. **iPhone客户端与Java后台通信**:iPhone应用可以通过HTTP或HTTPS协议发起请求到Java服务器。Objective-C或Swift是iPhone应用的主要编程语言,它们都提供了URLSession类来发送网络请求。开发者需要构造合适的URL...
TCP/UDP/ICMP/DHCP/DNS/HTTP 支持自动和命令两种工作模式 支持串口透明传输模式 支持 AT+控制指令集 支持多种参数配置方式: 串口/WEB 服务器/无线连接 全面支持串口透明数据传输模式,真 正实现串口的即插即用 ...
1. **网络通信协议**:源码中会包含客户端(如iOS应用)与服务器之间的通信协议,可能是HTTP/HTTPS,或者是自定义的TCP/IP协议,用于传输解锁请求和响应。 2. **身份验证机制**:为了防止非法用户滥用服务,源码...
在iOS平台上实现聊天功能,通常会涉及到多个技术领域,...通过以上技术的整合和优化,可以构建出一个功能完善的iPhone聊天应用。在实际开发中,还需要关注用户体验、性能测试和错误处理,确保应用的稳定性和易用性。