go和walk有啥区别?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了go和walk有啥区别?相关的知识,希望对你有一定的参考价值。
walk强调“步行”的方式go则强调“走”这一动作。如去旅游就用go。go for a trip。如果强调说走着去旅游就用walk。walk to travel旅游可以有很多单词来表示如:tour,journey,我这里用了两个不同的词trip和travel
希望我的回答能对你的学习有所帮助。希望你能采纳 参考技术A go是指走路,相对walk来说比较急,但多用于去做什么事。例如:go swimming(去游泳),go hiking(去远足)等。
walk是指散步,相对go来说比较悠闲,多用于休息时,如:talk a walk等 参考技术B go强调的是走,并且go后面要加介,如go to work(去上班)
walk强调的是步行方式,后面不用加介词,如Walk into the forest(在森林里散步) 参考技术C walk强调走的方式是"步行"
go没有
点击键盘“Go”按钮和网页按钮有啥区别
【中文标题】点击键盘“Go”按钮和网页按钮有啥区别【英文标题】:What is the difference between tapping keyboard "Go" button and web page button点击键盘“Go”按钮和网页按钮有什么区别 【发布时间】:2017-11-29 20:45:52 【问题描述】:TL;DR
我试图了解在使用 SFSafariViewController
通过 Azure 或任何其他 OAuth 提供程序对用户进行身份验证时,用户点击软件键盘上的“开始”按钮和点击身份验证网页上呈现的“登录”按钮之间有什么区别.
说明
我们正在使用各种 OAuth 提供程序(Azure、Keycloack 等)来对我们的原生 iOS 应用程序的用户进行身份验证。 我们向用户展示带有登录页面的浏览器实例 (SFSafariViewController) 此页面包含用户名、密码字段和登录按钮 当用户输入密码时,他/她可以使用页面上的Log In
按钮或iOS 软件键盘上的Go
按钮
在这两种情况下都将触发登录过程,并将用户重定向回正确的 URL
但是,如果用户点击软件键盘上的Go
按钮,应用程序不会收到有关重定向的通知(通用链接逻辑不起作用),并且重定向 URL 页面会在 SafariViewController 中呈现
它发生在各种 OAuth 提供程序中,并且只能在 iOS 上重现(使用 Android 软件键盘按钮时,通用链接表现良好)
我们现在正在通过创建特殊的重定向页面来处理这种情况,其中包含指向用户要点击的特殊链接。诸如“如果您没有自动重定向回应用程序,请点击此处”之类的内容。但我想知道是否有更好的解决方案,以及用户点击软件键盘按钮和 HTML 页面元素从操作系统/浏览器的角度来看有什么区别。
【问题讨论】:
【参考方案1】:您的解决方法似乎合理。
关于当用户从键盘导航时激活通用链接:这种情况似乎类似于用户在浏览器的地址栏输入一些 URL 并点击 GO 的情况。如果用户这样做,那么用户的意图是留在浏览器中,而不是去应用程序。所以不使用通用链接是合乎逻辑的。
为这种情况提供更好体验的另一种方法: 如果用户导航到 iPhone 上的“特殊重定向页面”,请尝试导航到您应用的 customURLScheme URL。此时您已经知道该应用程序已安装在此设备上。 尝试导航到 customURLScheme URL 会弹出 iOS 系统对话框,例如“你想打开 XYZ 应用程序吗?”。不过,这似乎比“如果您没有自动重定向回应用程序,请点击此处”要好一些。
您可能已经发现“特殊重定向页面”应该位于与“启用通用链接的域”不同的域中。在同一域内导航不会使用通用链接。作为参考,我们拥有的App Preview page 与您的“特殊重定向页面”的用途基本相同。
【讨论】:
谢谢。不幸的是,我们不能使用自定义 URI 方案,需要通过通用链接方法处理常规 HTTPS 链接。是的,我们基本上有两个自定义域用于特殊重定向页面和一些 JS 登录,以确保链接用户点击将导致不同的域,因此将触发通用链接处理。通过 OAuth 的通用链接处理重定向 URL 似乎是一个非常普遍的问题,我不敢相信这没有得到更好的解决。 在未经用户同意的情况下允许重定向/打开应用程序会涉及隐私问题。想想 Safari 和 SFSafariViewController 之间的 cookie 共享。这种共享在 iOS 11 中被 Apple 扼杀是有充分理由的。许多阴暗的玩家更关心利润而不是用户隐私。当然,像 OAuth 这样的合法用例也会受到影响。【参考方案2】:这是因为 iOS 上的通用链接无法以编程方式打开。当您单击“开始”按钮时,您实际上是在以编程方式提交输入表单(您可以通过在 Safari 栏中输入通用链接并单击“开始”来自己重新创建它,应用程序将不会打开)。只有当用户有意点击链接本身或重定向到通用链接的链接时,才能打开通用链接。
【讨论】:
用户正在网络表单字段中输入密码。重定向不是通过用户单击按钮,而是通过服务器后端接收表单,执行身份验证程序,然后将网页重定向到不同的 URL。您是否有任何指向解释此行为的文档或文章的链接? 我一直在 Apple 中积极搜索此文档,但从 iOS 10 开始,他们会跟踪对 original 链接的点击,以及该域是否执行重定向到通用链接域 Safari仍会将其注册为用户点击 b/c 原始链接已被点击。这一切都取决于与第一个链接的交互。我的意思是,如果您“以编程方式”选择该原始链接(Apple 将“Go”按钮视为编程)然后重定向到 UL,Apple 不会将此注册为链接点击。我只是从自己的测试中发现了这一点。 Apple 上没有文档 :( 有没有办法自定义“开始”按钮的行为?喜欢关闭键盘而不是“以编程方式”提交表单? 所以点击“Go”本质上就是点击“Return”,我知道有一些方法可以断开返回按钮与提交表单的连接。试试this 之类的方法,看看是否可以在输入时关闭键盘?非常丑陋,但我能想到的就是这些。【参考方案3】:假设您可以控制 OAuth 表单,我发现以下技术可以提供相当好的体验:
<button type="submit"
style="visibility:hidden; height: 0; margin: 0; padding: 0;"
onclick="document.activeElement.blur(); return false;">
</button>
将此隐藏按钮添加到表单上所有其他提交按钮的上方。当按下 Go 按钮时,我观察到它“点击”了表单上的第一个提交按钮。此按钮捕获该单击,模糊当前输入导致键盘被关闭,然后取消表单提交。然后,用户可以点击表单上的可见按钮以正确完成该过程。不需要两个流程。
这也允许桌面用户使用相同的 OAuth 表单按 Enter 提交表单或单击按钮。
【讨论】:
以上是关于go和walk有啥区别?的主要内容,如果未能解决你的问题,请参考以下文章
walk buy,walk between,walk through,walk over有啥区别
Files.list 和 Files.walkFileTree 以及 maxdepth = 1 的 Files.walk 有啥区别?