5.2 测试环境合约提交流程

测试环境流程

5.2.1 注册测试环境开发者账号

  • 开发者根据测试接入API调用 获取邮箱验证码 接口,验证码有效期30分钟,每个未注册邮箱24小时内最多请求3次验证码。
  • 开发者调用 使用邮箱注册 接口,使用上一步的验证码和邮箱注册。
  • 测试平台根据开发者接口提交的邮箱地址(必须)和验证码(必须),向开发者邮箱发送一份邮件,内含servce_id和secret。
  • 后续所有的测试接口请求,都需要带上此邮箱地址以及由邮箱地址、service_id和secret拼接字符串的md5值。测试平台的所有接口都将校验此md5。
  • 此接口不提供额外查询功能,如开发者信息遗失,需走客服流程找回。

5.2.2 调用充值接口

  • 开发者根据测试接入API调用 测试账号充值 接口。
  • 调用充值接口成功后,测试平台会向接口所提交的address账户转入1个token。
  • 测试平台的区块链环境完全独立,所以此测试token只能用于测试环境,转入其他区块链环境无效。
  • 每个email地址每天最多发起10次转账申请。
  • 测试环境下需要使用测试版的迅雷链助手App,测试版迅雷链助手App下载

5.2.3 开发合约应用和上层业务

  • 开发者开发合约应用,并通过上层业务(App, H5等实现)功能封装对合约的调用。
  • 合约的开发可参考合约开发指南

5.2.4 部署合约到迅雷链测试环境

  • 迅雷链测试环境可以通过Catalyst编译、部署和调用。也支持手动调用接口部署和调用。
  • 开发者通过手动调用 合约发布 接口,部署合约到迅雷链测试环境。
  • 发布合约API接口需要提供合约bytecode和params,byetecode为合约编译的bytecode,params是构造函数的参数经过sign后可直接拼接在bytecode后用于部署的编码。参考合约编码工具
  • 由于合约的部署是由平台方执行的,所以在合约的constructor方法里,避免使用msg.sender,如有权限和调用者限制需用到msg.sender,可通过参数传入用户的address代替。例:
  1. contract HelloWorld {
  2. address owner;
  3. constructor(address ownerArg) public {
  4. //owner = msg.sender; 使用ownerArg代替msg.sender
  5. owner = ownerArg;
  6. }
  7. }