首页
开源软件
问答
动弹
博客
翻译
资讯
Gitee
众包
活动
专区
源创会
求职/招聘
高手问答
开源访谈
周刊
公司开源导航页
登录
注册
首页
资讯
专区
问答
活动
软件库
发现
动弹
Gitee
首页
资讯
专区
问答
活动
软件库
发现
动弹
Gitee
登录
注册
开源问答
开源问答
技术问答
正文
怎样获取ASIFormDataRequest的postvalue
Qicz
发布于 2013/07/24 20:26
阅读 1K+
收藏
1
答案
3
ASIHTTPRequest
在ios客户端使用ASIFormDataRequest的setPostValue函数将数据发到服务器,服务器用Java(servlet或者struts),怎么才能在服务器端收到来自ios客户端的数据呢?
收藏 (
1
)
分享
微博
QQ
微信
举报
加载中
最多投票
最新
0
Qicz
2013/07/25 17:19
iOS客户端
- (IBAction)sendPostValue:(id)sender {
NSLog(@"send test");
NSURL *url = [NSURLURLWithString:@"http://localhost:8080/server/register"];
ASIHTTPRequest *request = [ASIHTTPRequestrequestWithURL:url];
NSString *string = @"{\"name1\":\"zcq喘着粗气\"}";
NSMutableData *data = [NSMutableDatadata];
[data appendData:[string dataUsingEncoding:NSUTF8StringEncoding]];
[request setRequestMethod:@"POST"];
[request appendPostData:data];
[request setDelegate:self];
[request setDidFinishSelector:@selector(finish:)];
[request setDidFailSelector:@selector(failFinish:)];
[request startAsynchronous];
}
Java服务器端
publicvoid doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html");
response.setCharacterEncoding("utf-8");
PrintWriter out = response.getWriter();
BufferedReader br = new BufferedReader(new InputStreamReader((ServletInputStream)request.getInputStream(),"utf-8"));
String line = null;
StringBuilder sb = new StringBuilder();
while((line = br.readLine())!=null){
System.out.println(line);
sb.append(line);
}
System.out.println(sb.toString());
out.print("sb = "+sb.toString());
ZCQ o = JSON.parseObject(sb.toString(),ZCQ.class);
System.out.println(o.getName1());
out.print(o.getName1());
out.flush();
out.close();
}
评论 (
1
)
引用此答案
举报
Railgun
2013/07/27 12:10
这不是FormRequest吧……
回复
举报
0
红薯
2013/07/25 11:04
iPhone
request 有读取body的方法,去api文档找
评论 (
6
)
引用此答案
举报
Qicz
2013/07/25 17:20
红薯哥,已经完成了,实现了可以取出来了
回复
举报
Qicz
2013/07/25 13:54
搞定了。取出来了。不过客户端到服务器的数据有编码问题,好像都被URLencode了。不知道咋个处理,我试了几个方法都不行
回复
举报
Qicz
2013/07/25 11:12
谢谢红薯哥哈
回复
举报
Qicz
2013/07/25 11:12
哦哦,好我在查一下
回复
举报
红薯
2013/07/25 11:10
@brucezcq
当然不是,你找一下不要偷懒,我在外面没法看,似乎是 getInputStream
回复
举报
下一页
0
wwwang89
2013/07/27 08:31
好文章,要ddddd
评论 (
0
)
引用此答案
举报
我要回答
Qicz
最近登录:2020/12/24 10:56
全部
Qicz的其他提问
新增数据库之后的数据库分库分表方案
1 回答
1K+ 阅读
JFinal HttpKit post的data,在JFinal中如何获取
3 回答 (已采纳)
2K+ 阅读
JFinal2.0 HashKit 这个是不是可以改改
4 回答
362 阅读
JFinal2.0 OreillyCos.setFileRenamePolicy(...) 支持自定义上传文件重名时的更名策略之疑问
4 回答
1K+ 阅读
Jfinal 如果让action不区分大小写
4 回答 (已采纳)
805 阅读
登录后可查看更多优质内容
使用微信快捷登录
©OSCHINA(OSChina.NET)
工信部
开源软件推进联盟
指定官方社区
深圳市奥思网络科技有限公司版权所有
粤ICP备12009483号
顶部
iOS客户端
- (IBAction)sendPostValue:(id)sender {
NSLog(@"send test");
NSURL *url = [NSURLURLWithString:@"http://localhost:8080/server/register"];
ASIHTTPRequest *request = [ASIHTTPRequestrequestWithURL:url];
NSString *string = @"{\"name1\":\"zcq喘着粗气\"}";
NSMutableData *data = [NSMutableDatadata];
[data appendData:[string dataUsingEncoding:NSUTF8StringEncoding]];
[request setRequestMethod:@"POST"];
[request appendPostData:data];
[request setDelegate:self];
[request setDidFinishSelector:@selector(finish:)];
[request setDidFailSelector:@selector(failFinish:)];
[request startAsynchronous];
}
Java服务器端
publicvoid doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html");
response.setCharacterEncoding("utf-8");
PrintWriter out = response.getWriter();
BufferedReader br = new BufferedReader(new InputStreamReader((ServletInputStream)request.getInputStream(),"utf-8"));
String line = null;
StringBuilder sb = new StringBuilder();
while((line = br.readLine())!=null){
System.out.println(line);
sb.append(line);
}
System.out.println(sb.toString());
out.print("sb = "+sb.toString());
ZCQ o = JSON.parseObject(sb.toString(),ZCQ.class);
System.out.println(o.getName1());
out.print(o.getName1());
out.flush();
out.close();
}