Steamworks 文献库
StartWebAssetTransaction/v0001
此 API 为用户就指定物品开始交易。
具体实现应调用 ISteamMicroTxn/InitTxn,以使 Steam 设置交易并获取一个转发 URL。

调用方: 网页购买

HTTP 方法: POST

参数:

名称类型是否必需描述
keystring这是在合作伙伴网站上,您在自己应用的 Steam 经济体设置中提供的“资产服务器密钥”。
appiduint32与资产相关联的应用程序的 32 位 App ID。
steamiduint64为其设置交易的用户的 64 位 Steam ID。
languagestring返回的字符串所使用语言的 ISO639-1 语言代码加 ISO 3166-1 alpha 2 国家代码。 如 en_US、de_DE、zh_CN、ko_KR 等。 默认为 en_US。
asset[n]string表示用户想购买的物品的字符串, 可以为物品定义索引、物品名称或游戏希望使用的任何其他独特的表述。 n 为从 0 开始的索引。用户想购买的各个物品均有一个索引。 其值应与 GetAssetPricesname 参数值一致,且与用户传入的 buyitem URL 的字符串相同。
quantity[n]uint32可选用的无符号整数,用于指明用户想购买的第 n 件物品的数量。 如果所购买的任何物品缺少该参数,应假定该值为 1。
currencystring交易使用的 ISO 4217 货币代码。
ipaddressstring字符串表示的用户 IP 地址。 此 IP 地址应与访问转发 URL 的 IP 地址一致,且应在交易全程保持不变。
referrerstring可选用的字符串,含有将用户引至交易地址的 URL。
sandboxuint32如果此交易使用不会从用户钱包中扣取资金的小额交易“sandbox”,则为非零。 在此情况下应调用 ISteamMicroTxnSandbox/InitTxn,而不是 ISteamMicroTxn/InitTxn。 参见小额交易实现指南,了解更多详情。

返回

此方法的输出应为 JSON 格式。

响应:
  • result
    • success - 如果方法成功,为 true。 如果资产服务器返回 false,应将 error 设置为解释原因的字符串 。
    • error - 描述为何此调用失败的字符串。 这条消息将记录入错误日志,可在 Steamworks 站点的“经济体”选项卡下查看。
    • displaytext - 可选的已本地化的错误消息,以向用户显示。
    • url - 将用户引导至交易将继续的 URL。 此 URL
      应有 returnurl 参数修正,指定在用户
      授权交易后应被引导至何处。 此 URL 应为最终调用
      FinalizeWebAssetTransaction 的 URL。 returnurl 参数的值也应包含
      交易 ID,在调用 FinalizeWebAssetTransaction 时需要使用该 ID。
      另外,也可以指定 cancelledurl 参数,表示如果
      用户取消交易而非授权交易,将被引导至何处。
    • txnid - InitTxnorderid 参数使用的
      交易 ID。

输出示例

{ "result": { "success": true, "url": "https://store.steampowered.com/checkout/approvetxn/229984771771125/", "txnid": "72" } }