- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
在我的网站上,我重写了所有网址。但是现在我已经开始使用 AJAX 进行投票功能(它是一个问答社区),但存在一些问题:
我将 new UrlSearchParams(window.location.search)
存储在常量中。然后我为此调用 .get()
方法。但是,因为 url 被重写,它无法识别查询。
const myParam = urlParams.get('id');
网址是 www.example.com/Questions/7
重写自 www.example.com/pages/question.php?id=7
我的 .htaccess 文件如下所示:
RewriteEngine On # Turn on the rewriting engine
Options -MultiViews
RewriteRule ^$ /pages/index.php [L]
RewriteRule ^users/([0-9]+)$ pages/profile.php?id=$1 [NC] # Handle users
RewriteRule ^questions/([0-9]+)$ pages/question.php?id=$1 [NC] # Handle questions
RewriteRule ^([A-Za-z_]+)$ pages/$1.php [NC] # Handle pages
RewriteRule ^([A-Za-z_]+)$ pages/$1.html [NC] # Handle pages
如何克服重写 url 时 UrlSearchParams 无法识别查询字符串数据这一事实?
最佳答案
您的重写规则所有内部重写,这意味着客户端代码只能看到原始 URL,即 /Questions/7
.
由于您的 PHP 在服务器端运行并且可以看到重写的查询参数,您可以直接将它们作为 JS 变量注入(inject)以供客户端代码使用。
例如,将其放入您的 <head>
节...
<script>
const ID_PARAM = <?= json_encode($_GET['id'] ?? null) ?>;
</script>
关于javascript - UrlSearchParams.get() 不适用于重写的网址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55670722/
我想向我的 webapi 发送带有一些搜索参数的 http.get 请求以获取学生列表。我找到了一些关于如何执行此操作的示例,但是在完全按照示例中的操作进行操作之后,我得到了这个奇怪的错误: Type
快速提问: 是否可以合并 URLSearchParams 的两个实例? const params1 = new URLSearchParams(); const params2 = new URLSe
我要搜索 params并添加 params到 URL,但每次都得到空数组。 示例网址 - http://localhost:3000/buildings?search_query=test&page=
关闭。这个问题需要details or clarity .它目前不接受答案。 想改进这个问题?通过 editing this post 添加详细信息并澄清问题. 去年关闭。 Improve this
在 React Native 中,我想做一个 URLSearchParams 的抽象,所以我写了这个类: export class HttpSearchParamsAdapter extends UR
我们正在使用 jest mock 。 enzyme用于在我们的应用程序中呈现。 在这里,我试图模拟 URLSearchParams的 get方法。 我试着用 jest.spyOn(URLSearchP
我有一个 Angular 服务,我尝试发送 HTTP Post 请求并设置Content-Type header 到 application/x-www-form-urlencoded 这是代码: i
我需要制作类似 example.com?want[]=1,2,3&want[]=1,2,3&want[]=1,2,3 的 URL> let params = new URLSearchParams()
这很奇怪,使用 DW CC 2018(万一这是问题所在),当我在我的 HTML 页面的脚本标记内使用 URLSearchParams 时,它不会被标记为“错误”。 我将 URLSearchParams
以前我用过 import { Http, Response, Headers, URLSearchParams } from "@angular/http"; API 调用 getprojectsc
我正在尝试使用 Node URL 和 URLSearchParams API 来简化 URL 构建。我正在使用它来构建这样的 URL: https:///oauth/authorize?respons
我需要提取 filter这是来自 URL 字符串的对象数组:http://localhost:3006/menus?page=1&filter[0][id]=MenuID&filter[0][valu
我正在使用查询参数,并被介绍给 URLSearchParams .我正在使用它来形成这种要查询的对象, const x = { a: 'hello World' b: 23 c: '' }
在我的网站上,我重写了所有网址。但是现在我已经开始使用 AJAX 进行投票功能(它是一个问答社区),但存在一些问题: 我将 new UrlSearchParams(window.location.se
如何将字符串数组值转换为 Javascript 数组对象? var querystring = 'lang[]=EN&lang[]=FR&type[]=1&type[]=2'; 进入: { l
为什么timeperiod为空 const url = 'http://example.com?timeperiod=lasttwentyeightdays&pagesize=20' const ar
这至少在 Chrome 中。如果我的窗口的 URL 是 https://www.google.com/search?q=JavaScript+URLSearchParams我在 JavaScript
我使用 URLSearchParmas 构建了一个带有查询参数的 oauth2 url API。但是,输出 URL 没有返回预期的 URL。谁能帮我理解这两个 API 之间的区别以及如何获得与 enc
我在使用 URLSearchParams 时遇到此错误 TypeError: url__WEBPACK_IMPORTED_MODULE_2__.URLSearchParams is not a con
我有一个项目使用来自isomorphic-fetch的fetch polyfill。我想使用 URLSearchParams 来提交 POST 数据。为了让 fetch 支持 URLSearchPar
我是一名优秀的程序员,十分优秀!