怎么观察 PHP 程序的执行

2015-08-30 18:43:42 +08:00
 adrianzhang
一个 PHP file ,向一个 web api 提出 POST 请求。我不懂 PHP ,想看看这个 POST 请求的整个 URL 是什么样的,怎么才能办到呢?
这个 PHP file 现在我的电脑上,取名 test.php ,可以用 php test.php 运行。
2438 次点击
所在节点    问与答
28 条回复
mudone
2015-08-30 20:35:26 +08:00
curl_setopt ($ch, CURLOPT_VERBOSE, true );
adrianzhang
2015-08-30 20:43:00 +08:00
@ljbha007
加 @是参考这里: https://docs.python.org/2/library/httplib.html 的 POST sample 。
经测试,去掉 @,还是 400 ;去掉 text/plain ,还是 400 ; 改成 application/json ,还是 400 。太邪门了。
ljbha007
2015-08-30 20:46:26 +08:00
你用 chrome 装个叫 postman 的工具测一下试试 不需要写代码
先把参数调对了再说
adrianzhang
2015-08-30 20:48:02 +08:00
@ljbha007 好的,我试试。多谢。
ljbha007
2015-08-30 22:12:39 +08:00
@adrianzhang 试了一下就是 @符号的问题

那个 sample 是坑人的 我就记得以前我没用过 @
adrianzhang
2015-08-30 22:36:30 +08:00
@ljbha007
目前发现的问题有:使用元组替换字典。这样才有正确的顺序。
params = urllib.urlencode ((('grant_type', self.grant_type ), ('scope', self.scope ), ('client_id', self.client_id ), ('client_secret', self.client_secret )))

请求是 https 而不是 http ,所以还要把 request_token = httplib.HTTPConnection (self.request_url )换成 request_token = httplib.HTTPSConnection (self.request_url )

但现在这两个改了以后还是拿不到 json 格式的 token 。
ljbha007
2015-08-30 22:38:27 +08:00
@adrianzhang 你先不写代码 手动把参数调对吧
adrianzhang
2015-08-30 22:53:25 +08:00
@ljbha007
又解决一个: request_url 只能设置域名,不可设置路径,要在 request_token.request ("POST", "", params, headers ) 这句里面 POST 后那个地方加上路径。
但仍然不行。

最后!还是太谢谢你了!! 最后最后一个问题就是:要去掉那个"Accept": "text/plain"

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/217146

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX