DELPHI盒子
!实时搜索: 盒子论坛 | 注册用户 | 修改信息 | 退出
检举帖 | 全文检索 | 关闭广告 | 捐赠
技术论坛
 用户名
 密  码
自动登陆(30天有效)
忘了密码
≡技术区≡
DELPHI技术
lazarus/fpc/Free Pascal
移动应用开发
Web应用开发
数据库专区
报表专区
网络通讯
开源项目
论坛精华贴
≡发布区≡
发布代码
发布控件
文档资料
经典工具
≡事务区≡
网站意见
盒子之家
招聘应聘
信息交换
论坛信息
最新加入: tkzcol
今日帖子: 9
在线用户: 39
导航: 论坛 -> DELPHI技术 斑竹:liumazi,sephil  
作者:
男 tms2021 (TMS2021) ▲▲△△△ -
普通会员
2022/11/8 16:55:17
标题:
Dephi 调用asp.net 的api返回数据格式不是json而是xml? 浏览:718
加入我的收藏
楼主: IdHttp := TIdHTTP.Create(nil);

  IdHttp.ConnectTimeout := 5000;
   //TStringStream对象用于保存响应信息
  ResponseStream := TStringStream.Create('');
     //请求地址
    Url := apiHttp + '/api//GetList';
    try
      IdHttp.Get(Url, ResponseStream);
    except
      on e: Exception do
      begin
        ShowMessage('连接服务器失败!');
      end;
    end;
     //获取网页返回的信息
    ResponseStr := ResponseStream.DataString;
     //网页中的存在中文时,需要进行UTF8解码
    ResponseStr := UTF8Decode(ResponseStr);

取得的结果集是xml格式的,是在原来json基础上增加了很多的xml的nr,实际该api返回的就是简单的json,修改哪里可以得到结果就是简单的json
----------------------------------------------
欢迎加入Delphi的QQ群:462884906
作者:
男 emailx45 (emailx45) ▲▲▲▲△ -
普通会员
2022/11/8 20:09:53
1楼: XML or JSON in API ?
----------
try this:
-- You need to use the "Accept header" in your request (not Content-Type) and send "application/json"

NOTE: try:  "text/json" used, too.

NOTE2: Delphi have XML class for some usage!!! look in help!
----------------------------------------------
The higher the degree, the greater the respect given to the humblest!RAD 11.3
作者:
男 pcplayer (pcplayer) ★☆☆☆☆ -
普通会员
2022/11/8 20:44:55
2楼: 楼主,获得什么数据,是服务器端决定的,不是客户端决定的。

这个和 delphi 以及 asp.net 无关。这个是 asp.net 服务器端写代码的人决定的。你要查服务器端给出来的 API 的资料。
----------------------------------------------
-
作者:
男 tms2021 (TMS2021) ▲▲△△△ -
普通会员
2022/11/8 21:33:30
3楼: To emailx45,it works ,than you !

To pcplayer:谢谢,服务端默认返回的就是简单的json,加了request.Accept:='application/json'好了
----------------------------------------------
欢迎加入Delphi的QQ群:462884906
信息
登陆以后才能回复
Copyright © 2CCC.Com 盒子论坛 v3.0.1 版权所有 页面执行128.9063毫秒 RSS