【问题标题】:HTTP Form is appending URL instead of redirectingHTTP 表单附加 URL 而不是重定向
【发布时间】:2018-11-05 21:32:19
【问题描述】:

这只是最近才开始发生的,我没有更改表单代码中的任何内容来导致问题,之前单击表单的提交按钮时,它会将数据发布到操作 URL 并重定向用户。相反,现在它将我重定向到https://my.current.domain/my/path/https://action.com

这是表单的呈现方式:

    <form
      method="post"
      action="​https://checkout.simplexcc.com/payments/new"
      target="_self"
      className="hidden-form"
    >
      {Object.keys(formData).map((key, index) => {
        const value = formData[key];
        return <input key={key} type="hidden" name={key} value={value} />;
      })}
      <button
        id="submit"
        type="submit"
      />
    </form>

例如,当我运行我的开发服务器时,我被重定向到

http://localhost:8000/https://checkout.simplexcc.com/payments/new

代替

https://checkout.simplexcc.com/payments/new

【问题讨论】:

  • 不知何故 localhost:port 被附加到您的 url 请求中。您是否尝试过使用您为action 属性提供的值?您说您没有更改任何内容,但您最近是否更改了任何 &lt;Route&gt; 声明或您用于导航的任何内容?
  • @DJ2 不,我没有更改任何路由。我在此版本和上一个版本之间所做的唯一更改是样式更改。它刚刚开始在此版本上执行此操作。基本上,它不是将表单提交到第 3 方网站,而是将操作用作我自己网站的相对路径。所以google.com/https://checkout.simplexcc.com/payments/new 将是正在发生的事情的一个生产示例。
  • 我应该澄清一下,如果我回到我的最后一次提交,它仍然会这样做,即使它正在为最后一次提交进行构建。

标签: html reactjs forms gatsby


【解决方案1】:

引号和您发布的片段中的字母 h 之间有一个不可见的 UTF8 字符。

【讨论】:

    猜你喜欢
    • 2020-02-19
    • 2019-08-04
    • 1970-01-01
    • 2017-07-23
    • 2020-11-15
    • 2017-12-06
    • 2016-01-23
    • 1970-01-01
    • 2012-12-16
    相关资源
    最近更新 更多