/** * Build signature. * * @param string $url * @param string $nonce * @param int $timestamp * * @return array */ public function signature($url = null, $nonce = null, $timestamp = null) { $url = $url ? $url : $this->getUrl(); $nonce = $nonce ? $nonce : Str::quickRandom(10); $timestamp = $timestamp ? $timestamp : time(); $ticket = $this->ticket(); $sign = ['appId' => $this->getAccessToken()->getAppId(), 'nonceStr' => $nonce, 'timestamp' => $timestamp, 'url' => $url, 'signature' => $this->getSignature($ticket, $nonce, $timestamp, $url)]; return $sign; }
/** * Return random string. * * @return string */ public function getNonce() { return Str::quickRandom(10); }