问题标签 [guzzle]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
959 浏览

php - 带有 Guzzle 的 MultiCurl 的 Amazon AWS PHP 开发工具包?

我需要使用 Amazon 的 AWS SDK for PHP 执行一些相当繁重的查询。
最有效的方法是使用PHP 的 MultiCurl。Guzzle似乎已经内置了 MultiCurl 的功能。

使用 AWS 开发工具包提供的标准方法会自动使用 MultiCurl 还是我必须直接指定它的用法?例如调用$sns->Publish()30 次。

谢谢!

0 投票
2 回答
4997 浏览

php - 迭代亚马逊 S3 上文件夹中的对象

我们有一个应用程序,用户可以在其中创建自己的网页并托管它们。我们使用 S3 来存储静态页面。在这里,由于每个用户限制为 100 个存储桶,我们决定为每个用户使用文件夹桶内的用户。

现在,如果用户想在他的域上托管他的网站,我们向他询问域名(当他启动时,我们将其发布在我们的子域上),我必须重命名文件夹。

S3 是一个平面文件系统,我知道实际上没有文件夹,只有分隔符/分隔值,所以我无法进入文件夹并检查它包含多少页。API 允许它一一进行,但为此我们必须知道对象名称在桶里。

我浏览了文档并遇到了我尚未实现的迭代器。这使用我没有经验并且在实现中面临挑战的guzzle

有没有其他我可以走的路,或者我需要走这条路。

0 投票
1 回答
171 浏览

php - 在 PHP 中使用命名空间

我正在研究使用 Guzzle 框架的 AWS 文档。我必须在这里处理名称空间,但我无法让它工作。我浏览了文档和示例,了解到我们可以为使用命名空间的项目提供包。

我继续尝试了一个简单的示例,但没有成功。这是示例:这是index.php

我有这样Classname.php的目录结构My->Full->Classname.php

我正在尝试调用该函数index.php但出现错误:

这是我实例化 Classname 对象的行 $obj = new Another;

我犯了什么错误?是否有任何INI需要更新或任何其他配置问题?我怎样才能使代码工作?如果您include对 Classname.php 使用正常的,它可以正常工作。

0 投票
2 回答
8254 浏览

php - Guzzle 并且无法将响应解析为 JSON

我有一个使用这种方法的小 php api 客户端:

我总是收到

我已经尝试了解服务器响应的示例,并且似乎很好:

这是结果:

0 投票
1 回答
864 浏览

php - PHP Guzzle - 重新声明问题

我正在使用 AWS .phar SDK 将对象放入 S3。我在其他 3 个应用程序上使用相同的代码,但由于某种原因,最新的一个似乎失败了。

上述错误没有意义,因为“aws.phar”只包含一次;guzzle 未安装到服务器,没有干扰命名空间。

任何想法?

0 投票
2 回答
1167 浏览

oauth - Bitbucket API OAuth 未正确重定向

我正在尝试为我的网站设置 Bitbucket OAuth,但由于某种原因,Bitbucket 没有正确重定向回我的网站。我已经创建了 OAuth 密钥和秘密,并且在我的 Silex 应用程序中使用了 Guzzle OAuth 插件。

首先,我通过 oauth/request_token 端点请求一个临时令牌。使用该令牌我重定向到 oauth/authenticate 端点:

这将在 Bitbucket 网站上打开页面,用户可以在该页面上授予或拒绝对其帐户的访问权限。在我单击“授予访问权限”后,Bitbucket 应该重定向回之前指定的回调 url,但它会将我的回调 url 附加到 Bitbucket url,如下所示:

https://bitbucket.org/api/1.0/oauth/http%3A%2F%2Fmysite.local%2Fauth%2Fbitbucket%2Fcallback?oauth_verifier=xxxxxxxxxx&oauth_token=xxxxxxxxxxxxxxxxxx

这显然会产生一个 Bitbucket 404 页面。有谁知道为什么重定向到我的回调 url 不能正常工作?

0 投票
0 回答
925 浏览

php - 如何在 PHPUnit 中测试 Guzzle 事件

我无法理解我应该如何对使用 \Guzzle\Common\Event 并且没有回报的方法进行单元测试。我有一个功能

我无法获得Guzzles 模拟对象文档中描述的方法来生成成功的测试。为了使它起作用,需要嘲笑什么?getQuery() 是我猜的 \Guzzle\Http\Message\Request 的一部分?set() 呢?

编辑:到目前为止我所做的是这样,但我不知道这是否是正确的方法。它成功了,但它没有断言任何测试。如果该方法没有返回任何内容,我不知道我可以。

我将 set() 跟踪到 guzzle common 集合。顺便说一句,$this->place 只是指被测试对象的实例,在 setUp() 函数中设置。

0 投票
4 回答
28502 浏览

soap - 使用 Guzzle 使用 SOAP

我喜欢我刚刚发现的 Guzzle 框架。我正在使用它使用不同的响应结构跨多个 API 聚合数据。它适用于 JSON 和 XML,但我需要使用的服务之一使用 SOAP。是否有使用 Guzzle 使用 SOAP 服务的内置方法?

0 投票
1 回答
2564 浏览

php - 向 Bit Bucket Access Token Endpoint 提交 Guzzle POST 时出现错误请求

我一直在尝试使用 OAuthv1.a 和位桶来实现一个简单的身份验证流程。当我使用之前提供的验证程序和 oauth_token 请求访问令牌时,就会出现我的问题。我总是收到 400 错误,但没有真正说明原因。

我在 guzzle 中使用 OauthPlugin 类来构建签名参数并按照文档中的描述提交发布请求。有没有人在使用任何其他 OAuthv1 提供程序或 Bit Bucket 时遇到过这样的问题?

0 投票
1 回答
334 浏览

symfony - csrf_protection on a Form causes "Failed to start the session" error

I have a Controller action which iterates over the an array of Entities and creates a Form for each, and then renders them in a Twig template, like so:

Loading this gives me an error of "Failed to start the session because headers have already been sent by "" at line 0."

This controller action was a re-write of a different action that worked perfectly. I tried eliminating differences between them but there are many, for example the new one uses Guzzle to consume the API. Almost all of the differences are behind the findProductsByCode() method, which just returns an array of entities.

The last three items in the stack trace are:

  • NativeSessionStorage ->start ()
  • at Session ->start ()
  • at SessionCsrfProvider ->getSessionId ()

So I started looking as csrf_protection. As soon as I disable csrf_protection in the FormType class, the error goes away and everything works.

The original working action DOES use csrf_protection, which I can verify by viewing the source of the form and seeing the token field.

So, why would csrf_protection cause this error in one action but not another action, using the same FormType?

**Edit: I have eliminated as many differences as I can between my two routes, and the only difference I can't eliminate is that one uses Guzzle to download an API and one uses cURL. I guess I'm going to have to look through Guzzle files for extra spaces or bad encoding?

**Edit2: Well, I narrowed it down and found the culprit, but I'm not sure what to do about it. I use Guzzle to consume the API, and my Guzzle class has a Listener which will set some status variables every time a request is sent. This code is in my Guzzle Class constructor:

If I remove that block, everything works. So now the question, why? I want to keep this listener of course.