Idempotency
1. 幂等性
关于PGOS中幂等性的说明,请查看此文档。
1.1 经济系统的幂等性
对于同一类型的API调用,幂等性令牌必须是唯一的。这意味着可以在不同类型的API调用中使用相同的idempotency_token
。例如,假设在GrantItemsToPlayer
请求中使用了IdempotencyToken1
,那么如果在ConsumeInstance
中传入IdempotencyToken1
,实例将会被成功消耗,因为ConsumeInstance
被视为与GrantItemsToPlayer
不同的API调用类型。以下是经济后端API的几种调用类型:
- 消耗实例(客户端SDK):使用相同幂等性令牌的请求在
ConsumeInstance
中将获得相同的结果。 - 发放物品或货币:使用相同幂等性令牌的请求在
GrantItemsToPlayer
、GrantCurrencyToPlayer
中将获得相同的结果。 - 扣除虚拟货币:使用相同幂等性令牌的请求在
SubtractPlayerCurrency
中将获得相同的结果。 - 增加实例自定义数据:增加实例自定义数据的幂等性范围与上述不同。幂等性令牌仅在同一实例下有效。即使使用相同的幂等性令牌,不同玩家或不同实例的请求也会被视为不同的请求。