网上教程大多不全,发送json ,服务端返回流文件,流文件保存。
function YB9160(JSON: string): TMemoryStream;
var
IdHTTP: TIdHTTP;
Response: string;
RequestBody: TStringStream;
ResponseStream: TMemoryStream;
begin
IdHTTP := TIdHTTP.Create;
ResponseStream:=TMemoryStream.Create;
IdHTTP.Request.ContentType := 'application/json';
IdHTTP.Response.ContentType := 'application/octet-stream';
RequestBody := TStringStream.Create(JSON, TEncoding.UTF8);
try
IdHTTP.Post('http://localhost:8091/**/**/**/interface/9160', RequestBody,ResponseStream);
ResponseStream.SaveToFile('E:\desktop\pierrot.pdf');
result :=ResponseStream;
except
on E: Exception do
MessageBox(0, PChar(E.Message), '错误', MB_ICONERROR);
end;
RequestBody.Free;
ResponseStream.Free;
IdHTTP.Free;
end;
有朋友问怎么用
//结算单入参
function RCYB9160(insuplc_admdvs: string; fixmedins_code: string;fixmedins_name: string; sign_no: string; setl_id: string; mdtrt_id: string;psn_no: string;doc_type:string): TMemoryStream;
var
jo, joch: TJSONObject;
S, SS,Str: string;
StrStream: TStringStream;
begin
jo := TJSONObject.Create;
joch := TJSONObject.Create;
try
// 赋值操作
jo