超时逆转(Time out reversal)
我需要将API集成到我的开发中,并使用一个名为“Time Out Reversal”(TOR)的特定场景
这意味着,无疑要遵守以下要求:
- 通过调用端点启动请求
- 如果在规定的时间内未收到回复
- 通过调用另一个端点启动反转请求
虽然这些要求对我来说非常清楚,但我还没有找到通过使用任务来实现它的方法。
例如,我知道如何延迟任务,但我真的不知道如何设置启动任务的超时秒数
有什么建议吗?
I need to integrate an API into my development with a specific scenario called "Time Out Reversal" (TOR)
This means, succintly, to comply with the following requirements:
- Initiate a request by invoking an endpoint
- If a response is not received within a defined time out
- start a reversal request by invoking another endpoint
While the requirements seems very clear to me, I really haven't found a way to implement it by using tasks.
For example, I know how to delay a task but I dont really know how to set a timeout in seconds for a started task
Any suggestion?
原文:https://stackoverflow.com/questions/43011194
最满意答案
我不会依赖这个。 这种情况下存在大量的记录错误。 为什么不添加
name='submit'
的隐藏字段? 这样重新编写后端就不会太难了。<input type='hidden' name='submit' value='FTSearchButton'/>
So, I researched this last night and almost got somewhere. Then this morning, I really did get somewhere and here's where I ended up.
Apparently the W3C standards for form submission are pretty lax when describing the functionality as it relates to the Enter button and submitting forms. It seems they determined that
'When there is only one single-line text input field in a form, the user agent should accept Enter in that field as a request to submit the form.'
So that leaves a lot of wiggle room for the browser makers. Today, virtually all browsers support using the Enter key to submit a form, whether the form contains one or more single line text input boxes.
The problem I'm having is more or less unique to 'IE', and only when the form contains one, single-line text input control. For whatever reason, Microsoft decided that when IE submits a form like this, it doesn't include the submit button's name/value pair in the post body. However, it does include the button's name/value pair if the user clicks the submit button --OR-- uses the enter key, and the form contains more than one single-line text input control.
So, the only solution I can think of or find suggested is to add a second single-line text input to my form, and then set the the style to
visibility:hidden;display:none;
My form now has two single-line text input controls, so the form will post with the name/value pair in the form body, regardless of whether or not the user used the enter key or clicked the submit button.
So, what we have is a work around that was discovered by ASP.NET developers. It seems the key/value pair is required by ASP.NET web-forms to fire the click event, so this work around isn't something new, albeit not my favorite way to do things.
相关问答
更多-
在HTML表单上输入键,而不是激活按钮(Making Enter key on an HTML form submit instead of activating button)[2022-07-31]
你可以使用jQuery: $(function() { $("form input").keypress(function (e) { if ((e.which && e.which == 13) || (e.keyCode && e.keyCode == 13)) { $('button[type=submit] .default').click(); return false; } else { ... -
$("input").keypress(function(event) { if (event.which == 13) { event.preventDefault(); $("form").submit(); } }); $("input").keypress(function(event) { if (event.which == 13) { event.preventDefault(); $("form").s ...
-
尝试: 这将把按钮waaay向左推出屏幕。 这样做的好处是,当CSS被禁用时,你会得到优雅的降级。 更新 - IE7的解决方法 如Bryan Downing +与tabindex建议,以防止tab达到此按钮(由Ates Goral):
当没有提交按钮时,表单不会在回车键上提交(form is not submitted on enter key when there is no submit button inside)[2021-10-11]
我的建议是..创建一个提交按钮。 如果你不想显示提交按钮,那么使用CSS隐藏按钮。 My suggestion is.. Create a submit button. If you do not want to show the submit button, then hide the button using CSS.在没有提交按钮时按下回车键时提交表单(Getting a form to submit when the enter key is pressed when there is no submit button)[2023-06-28]
经测试/跨浏览器: function submitOnEnter(e) { var theEvent = e || window.event; if(theEvent.keyCode == 13) { this.submit; } return true; } document.getElementById("myForm").onkeypress = function(e) { return submitOnEnter(e); }