我们有一个遗留(php)应用程序,接受文件上传,它们存储在路径取决于会话ID。现在我们必须为这个webapp提供一个非常简单的API,通过iOS api(iPad)执行文件上传。我们返回一个客户将在嵌入式webkit窗口中打开的url。返回上一个会话ID
由于来自上传和查看操作的会话不同,我们认为要获取会话参数并将其返回到我们的文件上传响应中。然后客户端被重定向到该URL,我们将会话ID设置为先前的ID并继续到客户可以继续工作的页面。
显然,没有任何我尝试过的作品。我们使用Zend Framework 1,但这应该不重要。我想:
- 设置一个Set-Cookie头(这将导致包含两个PHPSESSID值的cookie)
- 使用
setcookie("PHPSESSID", $session, 3600)
设置PHPSESSID - 使用Zend HTTP效应初探与
setHeader('Set-Cookie', 'PHPSESSID=....', true)
最后两个选项只是不做任何事情,就像我根本没有设置会话。我该如何解决这个问题?实际上,我们实际上无法触及遗留的代码库来修改其工作,并改变路径解析对文件上传的工作方式。
因此,流程是: 请求api.myapp.tld - >与主体的字符串响应 - >与此响应字符串作为位置打开的webkit窗口 - >执行请求 - >与重定向头响应以及将cookie设置为不同的方法 - > Webkit执行重定向 - >客户获取到与api.myapp.tld的第一个请求具有相同会话ID的页面。
如果有其他设置会话ID,它会很好。