分享

DELPHI编写多语言通用SDK(delphi源码已发) 04-05

 quasiceo 2012-12-19
DELPHI编写多语言通用SDK(delphi源码已发) 04-05更新
Delphi 7.0写的


2012-04-05
codes地址




http://code.google.com/p/kuaipancore/

调用方法见帖子下面的传送门源码,含JSON解析。


时间仓促,不过写的通俗易懂
很具有参考价值,有全部API实现方法,有问题请与我联系
2012-03-28

新增:
function Copyfile(consumer_key,consumer_secret,oauth_token,oauth_token_secret,from_Path,to_path,Root:pchar):pchar;external 'KuaiPanCore.dll'   name 'Copyfile';
function Movefile(consumer_key,consumer_secret,oauth_token,oauth_token_secret,from_Path,to_path,Root:pchar):pchar;external 'KuaiPanCore.dll'   name 'Movefile';



文件复制文件移动/改名
源码整理下发,写的时候见个API写的很乱


DEMO也更新了


2012-03-22

修复:

分享链接的BUG
修复中文名的信息获取,分享链接获取

新增:
function HMac_sha1(Codestr,secret:pchar)Char;

function GettimestampChar




2012-03-21


注意,新版本SDK中 所有string类型全部换成pchar,
为了兼容其他语言
DEMO也已经更新个人时间有限,可能有些功能没有很完善修复好


使用开发软件已经设计中。。。。。。。。
完善了异常处理 该DEMO跟SDK是可以实际生产使用的。。。


DEMO传送门:
http://bbs./viewthread.php?tid=21706&extra=page%3D1

附件下载:

SDK.rar (754.76 KB, 下载次数: 494)
SDK.jpg





支持SSL通道
动态链接库的优点就不多说啥了。全民调用。

JSON请自行解析,有空我会加上返回XML


一共提供了10个接口,顺序排列分别为

1.获取临时key ( 3个参数,consumer_key,consumer_secret,剩下一个boolean是否立刻打开授权页面, 返回JSON )

2.获取正式key   ( 4个参数,consumer_key,consumer_secret,oauth_token,oauth_token_secret , 返回JSON )

3.获取账户信息 (4个参数,consumer_key,consumer_secret,oauth_token,oauth_token_secret   返回JSON )

4.获取文件(夹)信息(8个参数,consumer_key,consumer_secret,oauth_token,oauth_token_secret ,需要获得的文件(夹)路径,应用权限路径 返回JSON)

5,6.创建删除文件夹(6个参数,consumer_key,consumer_secret,oauth_token,oauth_token_secret ,目录,应用权限路径 返回JSON )

7.得到上传地址 ( 1个参数,true返回原始Json格式。false直接返回解析好的http路径)

8.上传文件(8个参数,consumer_key,consumer_secret,oauth_token,oauth_token_secret ,快盘位置文件路径,应用权限路径, 上传地址,待上传文件路径 返回JSON )

9.下载文件(7个参数,consumer_key,consumer_secret,oauth_token,oauth_token_secret ,快盘位置文件路径,应用权限路径, 下载文件保存路径 返回JSON

10.获取分享连接(6个参数,consumer_key,consumer_secret,oauth_token,oauth_token_secret ,待分享文件路径,应用权限路径 返回JSON)

function GetTempToken(consumer_key,consumer_secret:string;OpenUrl:Boolean):String; external 'KuaiPanCore.dll' name 'GetTempToken';
function GetaccessToken(consumer_key,consumer_secret,oauth_token,oauth_token_secret:string):String;external 'KuaiPanCore.dll' name 'GetaccessToken';
function Getaccountinfo(consumer_key,consumer_secret,oauth_token,oauth_token_secret:string):String;external 'KuaiPanCore.dll' name 'Getaccountinfo';
function Getmetadata(consumer_key,consumer_secret,oauth_token,oauth_token_secret,Url,Root:string):String;external 'KuaiPanCore.dll' name 'Getmetadata';
function Createfolder(consumer_key,consumer_secret,oauth_token,oauth_token_secret,Path,Root:string):String;external 'KuaiPanCore.dll' name 'Createfolder';
function Deletefolder(consumer_key,consumer_secret,oauth_token,oauth_token_secret,Path,Root:string):String;external 'KuaiPanCore.dll' name 'Deletefolder';
function Getuploadlocate(Json:Boolean):string;external 'KuaiPanCore.dll' name 'Getuploadlocate';
function Uploadfile(consumer_key,consumer_secret,oauth_token,oauth_token_secret,Path,Root,uploadlocate,filename:string):String;external 'KuaiPanCore.dll' name 'Uploadfile';
function Downloadfile(consumer_key,consumer_secret,oauth_token,oauth_token_secret,Path,Root,filename:string):String;external 'KuaiPanCore.dll' name 'Downloadfile';
function Getshare(consumer_key,consumer_secret,oauth_token,oauth_token_secret,Path,Root:string):String;external 'KuaiPanCore.dll' name 'Getshare';





Uses  IdHMACSHA1,IdCoderMIME,HTTPApp; //INDY10
function EncryptHMACSha1(Input, AKey: string): TIdBytes;
  begin
    with TIdHMACSHA1.Create do
    try
      Key := ToBytes(AKey);
      Result := HashValue(ToBytes(Input));
    finally
      Free;
    end;
  end;
  function Base64Encode(const Input: TIdBytes): string;
  begin
    Result := TIdEncoderMIME.EncodeBytes(Input);
  end;


可以计算签名了Base64Encode(EncryptHMACSha1(codestr,consumer_secret+'&'+Token))  ;


Uses DateUtils;

时间戳:inttostr(DateTimeToUnix(Now)-8*60*60)

随机串我采用了时分秒+随机字数
Randomize;
  ranstr:=formatdatetime('HHmmssQ',now)+  IntToStr(Random(100000)) ;

其他也没啥难点了。。
工作人员请看看点评下。。本人小菜

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多