【问题标题】:How to install oAuth if I cannot access the server?如果我无法访问服务器,如何安装 oAuth?
【发布时间】:2011-11-15 15:09:53
【问题描述】:

我正在尝试创建一个可以读取用户 Dropbox 文件的 Web 应用。如果有助于回答问题,我要求提供用户名和密码。我一直在搜索,在 Google Code 中找到了一个使用 OAuth 访问用户 Dropbox 中所有数据的库。

我的问题是我没有在服务器中安装 OAuth。我需要安装它,但我没有对服务器和 php.ini 文件的物理访问权限,所以我也无法安装。

我的问题是我是否可以安装它,或者至少模拟它,将一些文件(我可以像类一样使用)上传到我的目录,或者是否有其他方法而不是调用主机并告诉他们安装它,如果可能的话。

如果有办法访问 php.ini 文件并对其进行修改以添加 OAuth 扩展名,或者如果可以通过 .htaccess 完成(作为最后机会),它也会有所帮助。

谢谢。

编辑:我得到的错误是: 未捕获的异常 'Dropbox_Exception' 带有消息“找不到 OAuth 类!您是否安装并启用了 oauth 扩展程序?'

【问题讨论】:

  • 这是一个 pecl 扩展,不需要编译任何东西。只需提取相关文件并按原样上传到服务器即可。
  • 如果你的意思是将它们上传到 lib/php5/pecl 或类似的东西,我无法访问服务器的那部分。服务器在主机中,我只能通过 FTP 访问我自己的文件(如 Web 文件)。我无法访问超出我权限的配置或文件夹。
  • 您可以在任何地方安装 PHP 扩展,包括您有权访问的目录。只要您知道通向该目录的完整路径,就可以通过这种方式包含它们。

标签: oauth installation php


【解决方案1】:

您不需要使用 OAuth 扩展,只需捆绑任何实现 OAuth 的库即可。

OAuth 站点在其站点上列出了several options。不仅适用于 PHP,还适用于各种语言。


您正在使用的dropbox library 的文档指出:

该库使用 OAuth。目前,您可以使用 这些库:

推荐使用扩展,但如果不能安装php扩展 你应该去买梨包。

既然不能安装php扩展,那就download the HTTP OAUTH library吧。

“HTTP”文件夹内是您需要的文件,因此您可以手动包含它。

【讨论】:

  • 我试着猜测如何使用它们。问题是我正在使用的库 (goo.gl/p7LjU) 使用了我没有的 OAuth 类。我试图一次又一次地搜索它,但我找不到它。我得到的错误如下:“未捕获的异常 'Dropbox_Exception' 带有消息'找不到 OAuth 类!您安装并启用了 oauth 扩展吗?'”
【解决方案2】:

OAuth 是一种协议。就像 Bittorrent 协议上有跟踪器和客户端(种子和节点)一样,OAuth 协议上有 服务提供者(这里是 Dropbox)和 消费者(您的应用程序)。

您需要一个实现 OAuth 的库,就像 @pablasso 所说的那样。

(请原谅我对 P2P 和客户端-服务器的比较)


OAuth-php 实现了 OAuth 的服务器端和客户端。我已经用这个库编写了服务器和客户端。可以将客户端配置为(仅)使用 $_SESSION 存储。

http://code.google.com/p/oauth-php/

但是,即使您可以用 100 行代码编写整个客户端,您也可能会受到令人困惑的文档的困扰。请查看包含的客户端示例。

您还需要服务器上的 CURL 扩展来向 DropBox 发出 HTTP 请求。


您可能还需要对协议工作流程有基本的了解。

http://oauth.net/core/1.0a/

【讨论】:

  • 我看过了,还是有同样的问题,就是我尝试使用的 Dropbox 库需要 OAuth 扩展。如果可以的话,我会为我的 porpouse 编写一个客户端和一个服务器,但不幸的是我不知道怎么做,我必须使用这个 Dropbox 库。无论如何感谢您的回答!
  • 你只需要实现客户端!您的应用将成为 OAuth 设置的“消费者”端。
  • 根据您的问题,我(和@pablasso 也是)假设您需要一个实现 OAuth 的库,以便您可以执行 Dropbox API dropbox.com/developers/reference/api 的身份验证部分。我猜你现在需要让 OAuth 库与 dropbox-php 一起工作。祝你好运!
猜你喜欢
  • 2021-05-16
  • 1970-01-01
  • 2022-08-20
  • 2014-03-17
  • 2022-01-20
  • 2011-11-18
  • 2021-03-30
  • 1970-01-01
  • 2017-06-05
相关资源
最近更新 更多