菜鸟教程小白 发表于 2022-12-11 19:35:38

ios - 如何生成签名方法 OAuth1


                                            <p><p>我想用 <code>OAuth1</code> 构建项目,我发现这样的签名请求:</p>

<pre><code>Authorization:
    OAuth oauth_consumer_key=&#34;xvz1evFS4wEEPTGEFPHBog&#34;,
          oauth_nonce=&#34;kYjzVBB8Y0ZFabxSWbWovY3uYSQ2pTgmZeNu2VS4cg&#34;,
          oauth_signature=&#34;tnnArxj06cWHq44gCs1OSKk%2FjLY%3D&#34;,
          oauth_signature_method=&#34;HMAC-SHA1&#34;,
          oauth_timestamp=&#34;1318622958&#34;,
          oauth_token=&#34;370773112-GmHxMAgYyLbNEtIKZeRNFsMKPR9EyMZeS9weJAEb&#34;,
          oauth_version=&#34;1.0&#34;
</code></pre>

<p>但是,我怎么能得到</p>

<blockquote>
<p>oauth_signature, oauth_nonce, oauth_timestamp ?</p>
</blockquote>

<p>没有 postman 怎么办?</p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>使用库 OAuthSwiftAlamofire</p>

<p>无需手动创建<strong>oauth_signature</strong>、<strong>oauth_nonce</strong>和<strong>oauth_timestamp</strong>。查看示例代码</p>

<pre><code>let oauthswift = self.getAuth1Object()
oauthswift.client.credential.oauthToken = kAuthToken
oauthswift.client.credential.oauthTokenSecret = kAuthTokenSecret
let sessionManager = SessionManager.default
sessionManager.adapter = OAuthSwiftRequestAdapter(oauthswift)
let api =sessionManager.request(strURL,method: .post, parameters: parameters, encoding: JSONEncoding.default,headers: [&#34;Content-Type&#34; :&#34;application/json&#34;])
</code></pre>

<p>这是你的 <strong>getAuth1Object()</strong></p>

<pre><code>func getAuth1Object() -&gt; OAuth1Swift {
      let oauthswift = OAuth1Swift(
            consumerKey:   &#34;put your consumer key here&#34;,
            consumerSecret: &#34;put your consumer secret here&#34;,
            requestTokenUrl: &#34;&#34;,
            authorizeUrl:    &#34;&#34;,
            accessTokenUrl:&#34;&#34;
      )
      return oauthswift
    }
</code></pre></p>
                                   
                                                <p style="font-size: 20px;">关于ios - 如何生成签名方法 OAuth1,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/43729085/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/43729085/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - 如何生成签名方法 OAuth1