菜鸟教程小白 发表于 2022-12-12 23:53:17

iphone - 适用于 iOS SDK 的 Magento oauth api


                                            <p><p>我正在使用 magento api 开发电子商务 iOS 应用程序。目前我正在尝试使用 oAuth 身份验证来请求 token 。</p>

<p>我使用以下 header 和它们的参数来验证用户。</p>

<blockquote>
<p>Request url =
<a href="http://beta.localhost.com/oauth/initiate?oauth_callback=" rel="noreferrer noopener nofollow">http://beta.localhost.com/oauth/initiate?oauth_callback=</a>&#39;<a href="http://localhost/testapp" rel="noreferrer noopener nofollow">http://localhost/testapp</a>&#39;</p>

<p>OAuth realm=&#34;http://beta.localhost.com/&#34;,
oauth_consumer_key=&#34;pr9vx4i46lc8jv8mmiu6z2w50p9an43x&#34;,
oauth_nonce=&#34;8QSHUZFRWRC5VGN3&#34;, oauth_signature_method=&#34;HMAC-SHA1&#34;,
oauth_timestamp=&#34;1354356514&#34;, oauth_version=&#34;1.0&#34;,
oauth_signature=&#34;ucKs4DyFbKv6MJ1l2%2Fx4NvF819A%3D&#34;</p>
</blockquote>

<p>我收到错误:
<strong>oauth_problem=signature_invalid&debug_sbs=szeWMR2jNONabHyS3Ui7FIF3iPc=</strong></p>

<p>我已经尝试了所有相同的方法,例如 twitter 身份验证,但我正在努力解决同样的问题</p>

<p>我也会尝试将这些方法包含在高级休息客户端中,但我会收到不同的错误消息</p>

<p><strong>我的 Rest 客户端响应页面截图。</strong></p>

<p> <img src="/image/2McEW.png" alt="enter image description here"/>
<img src="/image/LNrPA.png" alt="enter image description here"/> </p>

<p>通过接收 token 以帮助我继续执行此 magento api 以进行进一步的步骤。</p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>问题在于 OAuth 签名错误,Magento 错误响应清楚地表明了这一点。</p>

<p>调试签名过程是一个相当困难的过程,要通过 StackOverflow 问题来完成。查找和修复错误的最佳方法是在您自己的计算机上本地执行此操作。您需要通过 Magento 编写签名的方式(检查 <code>Zend_Oauth_Http_Utility::sign()</code> 方法,该方法将引导您进入 <code>Zend_Oauth_Signature_Hmac</code> 类)并逐步比较过程与iOS端的那个。这将帮助您找到差异。</p>

<p>出现此类问题的最常见原因有以下三个:</p>

<ol>
<li>数据部分的错误顺序(在当前情况下 - 您的 'oauth_*' 参数),已处理以获取签名。</li>
<li>签名算法错误,自己实现时</li>
<li>为了将二进制签名转换为字符串并通过 HTTP 传递而进行了错误的编码</li>
</ol>

<p>比较 Magento 和 iOS 进程及其中间结果,将帮助您找到它们开始不同的步骤。因此,您将能够理解需要修复的内容。</p></p>
                                   
                                                <p style="font-size: 20px;">关于iphone - 适用于 iOS SDK 的 Magento oauth api,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/13658497/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/13658497/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: iphone - 适用于 iOS SDK 的 Magento oauth api