zoukankan      html  css  js  c++  java
  • Delphi 10.4 -- TNetHTTPClient使用示例

    原文:https://www.cnblogs.com/wuxi15/p/12650896.html

    function GetAccessToken(const client_id, client_secret: string;
      HTTP: TNetHTTPClient;out access_token,expires_in,error:String):Boolean;
    var
     URL:String;
     cParam:TStringList;
     FJson:TJsonObject;
     S:string;
    begin
      URL:='https://aip.baidubce.com/oauth/2.0/token';
      cParam:=TStringList.Create;
      cParam.Add('grant_type=client_credentials');
      cParam.Add('client_id='+client_id);
      cParam.Add('client_secret='+client_secret);
      try
      s:=HTTP.Post(URL,cParam).ContentAsString;
      FJson:=TJSONObject.ParseJSONValue(s) as TJSONObject;
      error:='';
      if FJson.Values['error']<>nil then
       begin
         if FJson.Values['error_description'].Value='unknown client id' then
           error:='API Key不正确';
         if FJson.Values['error_description'].Value='Client authentication failed' then
           error:='Secret Key不正确';
         if error='' then
           error:='未知错误';
           FJson.Free;
         Exit(false);
       end;
        access_token:=FJson.Values['access_token'].Value;
        expires_in:=FJson.Values['expires_in'].Value;
        Result:=True;
        FJson.Free;
      finally
        cParam.Clear;
        cParam.Free;
      end;
    end;
    

      

  • 相关阅读:
    dijkstra 为什么不能解决负权边?
    Asteroids poj3041
    Dining poj3281
    炮兵阵地
    玉米田Corn Fields
    互不侵犯
    Golang---内存管理(内存分配)
    单例模式-Singleton
    HTTP2.0 学习
    Golang---GMP调度策略
  • 原文地址:https://www.cnblogs.com/tc310/p/14924074.html
Copyright © 2011-2022 走看看