如何从 Gmail 应用程序嵌入式 Safari 浏览器在 iOS 上调试“400 错误请求”

Posted

技术标签:

【中文标题】如何从 Gmail 应用程序嵌入式 Safari 浏览器在 iOS 上调试“400 错误请求”【英文标题】:How to debug a "400 Bad Request" on iOS from Gmail app embedded Safari browser 【发布时间】:2021-09-30 03:00:18 【问题描述】:

我们有一个通过电子邮件链接发送的网络表单,其中嵌入的 Safari 网络浏览器存在特殊问题。我目前无法分享链接示例。

当您在 ios 上的 Gmail 应用程序中打开链接并选择 Safari 选项时,会出现该错误。这将打开嵌入在 Gmail 中的 Safari 网络浏览器。提交 Web 表单时,您会收到“400 Bad Request”。如果您复制链接,然后退出 Gmail,打开 Safari 网络浏览器并粘贴链接,则可以正常提交表单。

我希望能够在开发人员工具中进行调试。

有人知道怎么做吗?我知道如果您有 Mac(我没有),那么您可以将您的 Safari 网络浏览器连接到开发人员工具,这适用于 Gmail 应用程序嵌入式 safari 浏览器吗?

【问题讨论】:

【参考方案1】:

最终通过下载和安装 Proxyman iPhone 应用程序进行了调试,该应用程序能够捕获设备上所有应用程序的 HTTPS 请求。它通过从设备到应用程序安装一个特殊的 *** 来工作,你必须生成并安装一个 CA 证书。 Proxyman 能够以 cURL 格式导出 HTTPS 请求,然后您可以将其用于从计算机进行调试。

https://proxyman.io/

如果你有本地的开发环境和网络,将 iPhone 连接到局域网上的电脑,然后你可以使用手机在开发环境中触发请求,但是使用 HTTPS 可能会很棘手。因此可以使用 ngrok 将请求从互联网路由到本地环境。

【讨论】:

以上是关于如何从 Gmail 应用程序嵌入式 Safari 浏览器在 iOS 上调试“400 错误请求”的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 Safari 应用程序在 UIWebView 中启动链接?

PhoneGap:如何跳过 inAppBrowser 以使用 Safari 打开 url

如何阻止电子邮件中的嵌入图像被 GMail 显示为附件?

使用 Gmail API 时,您能否以及如何在电子邮件中嵌入图像?

如何让用户浏览器直接从 GMAIL 下载 gmail 附件?

Python - 使用嵌入图像向 GMAIL 发送邮件