电子合同API开发文档 v5

设置签署位置

请求地址:/v5/Contracts/positionSign.json

请求方式:POST

接口版本: 5.2.3

接口描述:

program APIStore;
{*
本范例在Delphi XE10.1下编译通过,依赖Indy10组件
*}
{$APPTYPE CONSOLE}

{$R *.res}

uses
  System.SysUtils, System.Classes,
  IdHTTP,idURI;

{*
POST请求方式(推荐)
url 请求地址
param 请求参数
*}
procedure requestPost(url:string; param:string);
var
  pHttp: TIdHTTP;

  requestStream : TStringStream;  //请求数据流
  responseStream : TStringStream; //返回信息
  responseStr : string;
begin
  requestStream := TStringStream.Create('',TEncoding.UTF8);
  responseStream := TStringStream.Create('',TEncoding.UTF8);
  pHttp := TIdHTTP.Create(Nil);
  try
    try
      phttp.Request.ContentType:='application/x-www-form-urlencoded';
      phttp.Request.CharSet := 'UTF-8';
      requestStream.WriteString(param);   //以流的方式提交参数

      pHttp.Post(url,requestStream,responseStream);

      responseStr := responseStream.DataString;    //获取网页返回的信息
      //responseStr := UTF8Decode(responseStr);
      writeln(responseStr);
    except
      on e : Exception do
       begin
        writeln(e.Message);
      end;
    end;
  finally
    phttp.Free;
    requestStream.Free;
    responseStream.Free;
  end;
end;

{*
GET请求方式
url 请求地址
param 请求参数
*}
procedure requestGet(url:string; param:string);
  var
  pHttp: TIdHTTP;
  responseStream : TStringStream; //返回信息
  responseStr : string;
begin
  responseStream := TStringStream.Create('',TEncoding.UTF8);
  pHttp := TIdHTTP.Create(Nil);
  try
    try
      pHttp.Get(url + '?' + param,responseStream);
      responseStr := responseStream.DataString;    //获取网页返回的信息
      //responseStr := UTF8Decode(ResponseStr);
      writeln(responseStr);
    except
      on e : Exception do
       begin
        writeln(e.Message);
      end;
    end;
  finally
    phttp.Free;
    responseStream.Free;
  end;
end;


//获取内容
procedure getContent(requestType:string);
var
  url:string;
  reg:string;
  pwd:string;
  param:string;
begin
   url:="https://api-v2.1dq.com/v5/Contracts/positionSign.json";
 param:="easy_id=175592531139104768&position=[
    {
        "x": "200",
        "y": "200",
        "page": "第几页",
        "seal_type": "1、普通印章,2、骑缝章",
        "user_type": "类型,1为个人,2为企业",

        "seal_width": "无特殊要求,不用传递,为空默认即可。签署区域宽度",
        "seal_height": "无特殊要求,不用传递,为空默认即可。签署区域高度",
        "area_title": "无特殊要求,不用传递,为空默认即可。签署提示",
        "page_width": "无特殊要求,不用传递,为空默认即可。指定页面宽度",
        "sign_id": "无特殊要求,不用传递,为空默认即可。签署人或填写人id"
    }
]&words_id=&number=test@1dq.com";

  if requestType = 'GET' then
  begin
      requestGet(url,param);
  end
  else
  begin
      requestPost(url,param);
  end;
end;