我使用Xdebug和PHPStorm的调试功能调试我的API。为此,客户端需要一个名为XDEBUG_SESSION
的cookie。
使用Postman时,我曾经使用Chrome扩展程序添加此Cookie,以及Postman的Cookie拦截功能,以便在Postman中使用它(因为它是一个沙盒应用程序)。
但是,我无法在Paw中创建cookie。因此,作为一种变通方法,我修改了API响应cookie,使密钥为XDEBUG_SESSION
,值为PHPSTORM
,并且调试工作正常。然而,这并不理想,因为我也希望将到期日设置为远期(我不能在Paw中)。
所以,我的问题是:
答案 0 :(得分:10)
我只是设法通过Paw(2.1.1)来调试我的API。
您只需添加一个名称为Cookie
的标头,并且会从显示的下拉列表中选择值Cookies
。然后,您必须在刚刚创建的标头的Cookie值中插入名为XDEBUG_SESSION
的Cookie,其值为PHPSTORM
。
更清楚的是,您可以在下面的屏幕截图中看到它:
答案 1 :(得分:2)
我弄乱了它,看看我是否可以创建一个扩展。我无法做到,而且下面没有用,但我认为如果有人知道丢失的部分,我会分享。
首先,此功能没有扩展类别(生成器,动态值,导入器)。我试图使用动态值类别,但没有成功:
CookieInjector = function(key, value) {
this.key = "XDEBUG_SESSION";
this.value = "PHPSTORM";
this.evaluate = function () {
var f = function (x,y) {
document.cookie=this.key+"="+this.value;
return true;
}
return f(this.key, this.value);
}
// Title function: takes no params, should return the string to display as
// the Dynamic Value title
this.title = function() {
return "Cookie"
}
// Text function: takes no params, should return the string to display as
// the Dynamic Value text
this.text = function() {
return this.key+"="+this.value;
}
}
// Extension Identifier (as a reverse domain name)
CookieInjector.identifier = "com.luckymarmot.PawExtensions.CookieInjector";
// Extension Name
CookieInjector.title = "Inject Cookie Into Cookie Jar";
// Dynamic Value Inputs
CookieInjector.inputs = [
DynamicValueInput("key", "Key", "String"),
DynamicValueInput("value", "Value", "String")
]
// Register this new Extension
registerDynamicValueClass(CookieInjector);
阻止此工作的主要原因是我不确定请求是如何在PAW中构建的,也不确定如何附加cookie。我查看了这里的文档:https://luckymarmot.com/paw/doc/Extensions/Reference/Reference,找不到我需要的内容。