解决方案 »
- 在sql一表中再插入其它表内某一字段的方法
- MDI程序,建立登陆界面时出现问题!
- ado连接释放问题
- 各位大哥,谁有烟草生产企业的结构图?
- 设置frmMain的Color后,TPageControl也跟着变颜色,但是Tab区域没有改变,怎样才能使TPageControl完全透明?
- 关于好看的界面
- 请问一级和二级字库的内码范围是多少
- 还在的大侠,请帮忙:关于时间问题
- 我想 拦截 DiskID32.dll 中返回硬盘序列号的函数,用hook怎么做?
- 问大家一个问题,Memo控件里可不可以改变里面(((((((((单个字))))))))))的颜色?
- delphi HttpQueryInfo查询响应头信息,执行成功,但是返回的是空字符串
- 关于三层服务器程序测试问题?
http://www.cnblogs.com/del/archive/2009/10/22/1588384.html
http://www.cnblogs.com/del/archive/2009/10/22/1588384.html能来个简单的例子吗?这个之前听说josn有工具包可以解决,但是从来没使用过,不知道怎么入手
http://www.cnblogs.com/del/archive/2009/10/22/1588384.html能来个简单的例子吗?这个之前听说josn有工具包可以解决,但是从来没使用过,不知道怎么入手
你提供个获取数据的入口,这种复制来粘帖去,格式就变了,最好直接获取到数据然后解析。
http://www.cnblogs.com/del/archive/2009/10/22/1588384.html能来个简单的例子吗?这个之前听说josn有工具包可以解决,但是从来没使用过,不知道怎么入手
你提供个获取数据的入口,这种复制来粘帖去,格式就变了,最好直接获取到数据然后解析。以下是我写的代码:
procedure TForm1.btn1Click(Sender: TObject);
var
Param:TStringList;
RStream:TStringStream; s:TidHashMessageDigest5;
bt:tidbytes;begin
Param:=TStringList.Create;
RStream:=TStringStream.Create('',65001);
//idhtp1.Request.AcceptLanguage:='UTF-8'; edt11.Text:=edt1.Text+edt2.text+edt3.text+edt4.text;
bt:=tidbytes(TEncoding.UTF8.GetBytes(edt11.Text));
s:=TIdHashMessageDigest5.Create; Param.Add('u='+edt1.Text);
Param.Add('p='+edt2.Text);
Param.Add('body='+edt3.Text);
Param.Add('sign='+s.HashBytesAsHex(bt).ToLower);
//ShowMessage(s.HashBytesAsHex(bt).ToLower); IdHTP1.Post('http://test.zmyou.com/union/api/et/scenic!api.action',Param,RStream); mmo1.Text:=UTF8Decode(RStream.DataString); //未加UTF8Decode函数前乱码
mmo1.Text:=RStream.DataString;
end;其中:
edt1.text := 'api_test';
edt2.text := 'c4ca4238a0b923820dcc509a6f75849b';
edt3.text := '{"action":"GET_SCENIC_LIST","currentPageNum":1,"pageSize":5,"name":"温泉","typeList":["1","2"],"starList":["5","4"],"provinceList":["福建"],"cityList":["厦门","泉州"]}'
edt4.text := 'ot7M30XwoGL35IOl';sign:=edt1.Text+edt2.text+edt3.text+edt4.text;//edt11.text以上是相关代码及参数。麻烦弄个demo,目的就是提取里面的数据,要么每行一个数据,要么就是一段文字一个数据,post你就可以看到数据了
弄个demo解析这些数据一下啊,没玩过哦!正学习这东东呢
var
Param: TStringList;
RStream: TStringStream; s: TidHashMessageDigest5;
bt: tidbytes; json: ISuperObject; item: ISuperObject;
i: TObject;
begin
Param := TStringList.Create;
RStream := TStringStream.Create('', 65001); edt11.Text := edt1.Text + edt2.Text + edt3.Text + edt4.Text;
bt := tidbytes(TEncoding.UTF8.GetBytes(edt11.Text));
s := TidHashMessageDigest5.Create; Param.Add('u=' + edt1.Text);
Param.Add('p=' + edt2.Text);
Param.Add('body=' + edt3.Text);
Param.Add('sign=' + s.HashBytesAsHex(bt).ToLower);
s.Free; idhtp1.Post('http://test.zmyou.com/union/api/et/scenic!api.action',
Param, RStream); json := SO(RStream.DataString);
if (Assigned(json)) and (json['status'].AsString = 'ok') then
begin
json := json['body'];
item := SO(json.AsString)['pageData'];
mmo1.Lines.Add(item.AsArray[0]['name'].AsString);
mmo1.Lines.Add(item.AsArray[0]['notice'].AsString);
end;end;
delphi xe7下测试通过
superobject可从我#4提供的地址下载得到。