标签: query-string

如何通过密钥从Url中有效删除查询字符串?

如何从Url中删除Key的查询字符串?

我有以下方法工作正常但只是想知道有更好/更短的方式?或内置的.NET方法,可以更有效地做到这一点?

 public static string RemoveQueryStringByKey(string url, string key)
        {
            var indexOfQuestionMark = url.IndexOf("?");
            if (indexOfQuestionMark == -1)
            {
                return url;
            }

            var result = url.Substring(0, indexOfQuestionMark);
            var queryStrings = url.Substring(indexOfQuestionMark + 1);
            var queryStringParts = queryStrings.Split(new [] {'&'});
            var isFirstAdded = false;

            for (int index = 0; index <queryStringParts.Length; index++)
            {
                var keyValue = queryStringParts[index].Split(new char[] { '=' });
                if (keyValue[0] == key)
                {
                    continue;
                }

                if (!isFirstAdded)
                {
                    result += "?";
                    isFirstAdded = true;
                }
                else
                {
                    result …
Run Code Online (Sandbox Code Playgroud)

.net c# regex url query-string

33
推荐指数
4
解决办法
5万
查看次数

正则表达式从查询字符串中删除一个参数

我正在寻找一个正则表达式来从查询字符串中删除单个参数,我想在可能的情况下在单个正则表达式中执行此操作.

说我想删除foo参数.现在我用这个:

/&?foo\=[^&]+/
Run Code Online (Sandbox Code Playgroud)

只要foo不是查询字符串中的第一个参数,它就可以工作.如果是,那么我的新查询字符串以&符号开头.(例如," foo=123&bar=456"给出" "的结果&bar=456.)现在,我只是在正则表达式后检查,如果查询字符串以&符号开头,如果是,则将其砍掉.

示例边缘情况:

Input                    |  Expected Output
-------------------------+--------------------
foo=123                  |  (empty string)
foo=123&bar=456          |  bar=456
bar=456&foo=123          |  bar=456
abc=789&foo=123&bar=456  |  abc=789&bar=456
Run Code Online (Sandbox Code Playgroud)

编辑

好的,正如评论中指出的那样,有更多的边缘案例比我最初考虑的更多.我得到以下正则表达式与他们一起工作:

/&foo(\=[^&]*)?(?=&|$)|^foo(\=[^&]*)?(&|$)/
Run Code Online (Sandbox Code Playgroud)

这是从马克拜尔斯的回答中修改,这就是为什么我接受那个,但罗杰佩特的投入也帮助了很多.

以下是我正在使用的全套测试用例,以及一个测试它们的Javascript代码段:

$(function() {
    var regex = /&foo(\=[^&]*)?(?=&|$)|^foo(\=[^&]*)?(&|$)/;
    
    var escapeHtml = function (str) {
        var map = {
          '&': '&amp;',
          '<': '&lt;',
          '>': '&gt;',
          '"': '&quot;',
          "'": '&#039;'
        };
        
        return str.replace(/[&<>"']/g, function(m) { return map[m]; });
    };

    
    //test cases
    var tests …
Run Code Online (Sandbox Code Playgroud)

regex query-string

32
推荐指数
2
解决办法
3万
查看次数

如何在页面加载时处理辅助bean中的GET查询字符串URL参数?

我已经阅读了如何使用JSF发送参数但是如果用户companyId在访问其登录页面时在URL中键入它们会怎么样?例如,

http://my.company.url/productName/login.faces?companyId = acme.

我们现在的方式是,有一些scriptlet代码可以从请求中获取值,然后在会话中设置它.该参数从登录页面开始改变其外观,因此每个客户可以具有不同的登录页面视图.在切换到JSF之前,我们正在使用extj.

有没有办法使用JSF 2或PrimeFaces?

jsf query-string jsf-2 managed-bean http-request-parameters

31
推荐指数
3
解决办法
4万
查看次数

如何通过javascript获取查询字符串?

如何从javascript中的URL中提取查询字符串?

谢谢!

javascript query-string

30
推荐指数
2
解决办法
10万
查看次数

使用正则表达式从查询字符串中捕获值?

我试图选择name=之前和之后的内容&:

"/pages/new?name=J&return_url=/page/new"
Run Code Online (Sandbox Code Playgroud)

到目前为止我有..

^name=(.*?).
Run Code Online (Sandbox Code Playgroud)

我试图在这种情况下返回,只是J,但它的动态,所以它可以有几个字符,字母或数字.

最终案例的情况是允许自己对replace正则表达式找到的这个动态变量做一个声明.

javascript regex query-string

30
推荐指数
3
解决办法
5万
查看次数

Lucene查询字符串Elasticsearch"小于或等于"[URI搜索]

在如此多的网站上,他们教授如何使用范围查询从Elasticsearch查询数据.我想使用像这样的Lucene样式查询字符串从Elasticsearch查询小于或等于某个数字的数据.

fieldname:[* TO 100] 
Run Code Online (Sandbox Code Playgroud)

要么

fieldname:["*" TO "100"]
Run Code Online (Sandbox Code Playgroud)

我尝试过其他格式,但没有一种有效.有人能帮我吗?

query-string elasticsearch

30
推荐指数
2
解决办法
4万
查看次数

如何使用查询args构造Django反向/ url?

我有http://example.com/depict?smiles=CO&width=200&height=200(以及其他几个可选参数)等网址

我的urls.py包含:

urlpatterns = patterns('',
    (r'^$', 'cansmi.index'),
    (r'^cansmi$', 'cansmi.cansmi'),
    url(r'^depict$', cyclops.django.depict, name="cyclops-depict"),
Run Code Online (Sandbox Code Playgroud)

我可以转到该URL并获得构建的200x200 PNG,因此我知道该部分有效.

在我的"cansmi.cansmi"响应的模板中,我想给出一些查询参数的命名模板"cyclops-depict"的URL.我以为我能做到

{%url cyclops-depict smiles = input_smiles width = 200 height = 200%}

其中"input_smiles"是通过表单提交输入模板的.在这种情况下,它是字符串"CO",我认为它将创建一个类似于顶部的URL.

此模板因TemplateSyntaxError而失败:

在渲染时捕获异常:反向'cyclops-depict',带参数'()'和关键字参数'{'smiles':u'CO','height':200,'width':200}'未找到.

这是StackOverflow和其他地方的一个相当常见的错误消息.在我发现的每种情况下,人们都在URL路径regexp中使用带参数的情况,这与参数进入查询的情况不同.

这意味着我做错了.我该怎么做?也就是说,我想使用模板中的内容构造完整的URL,包括路径和查询参数.

以供参考,

% python manage.py shell
Python 2.6.1 (r261:67515, Feb 11 2010, 00:51:29) 
[GCC 4.2.1 (Apple Inc. build 5646)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
(InteractiveConsole)
>>> from django.core.urlresolvers import reverse
>>> reverse("cyclops-depict", kwargs=dict())
'/depict'
>>> reverse("cyclops-depict", kwargs=dict(smiles="CO"))
Traceback (most recent call last): …
Run Code Online (Sandbox Code Playgroud)

django url reverse query-string

29
推荐指数
6
解决办法
3万
查看次数

request.getQueryString()似乎需要一些编码

我有一些UTF-8的问题.我的客户端(在GWT中实现)向我的servlet发出请求,URL中有一些参数,如下所示:

http://localhost:8080/servlet?param=value
Run Code Online (Sandbox Code Playgroud)

当我在servlet中检索URL时,我遇到了UTF-8字符的问题.我用这个代码:

protected void service(HttpServletRequest request, HttpServletResponse response) 
                    throws ServletException, IOException {

        request.setCharacterEncoding("UTF-8");

        String reqUrl = request.getRequestURL().toString(); 
        String queryString = request.getQueryString();
        System.out.println("Request: "+reqUrl + "?" + queryString);
        ...
Run Code Online (Sandbox Code Playgroud)

所以,如果我打电话给这个网址:

http://localhost:8080/servlet?param=così
Run Code Online (Sandbox Code Playgroud)

结果是这样的:

Request: http://localhost:8080/servlet?param=cos%C3%AC
Run Code Online (Sandbox Code Playgroud)

如何正确设置字符编码?

servlets utf-8 character-encoding query-string

29
推荐指数
3
解决办法
7万
查看次数

为什么有些数字被添加到ajax对象的url以及如何删除它们?

我想下载文件以供进一步使用,这是我找到的最好的方法,但是当我看到由beforeSendEvent 创建的日志时,URL已被queryString修改为:

http://blabla.com/test.swf?_=1346484617818
Run Code Online (Sandbox Code Playgroud)

数字也是随机的.

我想知道为什么会这样!

var url = 'http://blabla.com/test.swf';

$(document).ready(function () {
           $.ajaxSetup({
             'beforeSend':function () {
                          console.log(this.url);}
           });

        $.ajax({
            url:url,
            dataType:"script",
            });
});
Run Code Online (Sandbox Code Playgroud)

ajax jquery query-string

29
推荐指数
1
解决办法
2万
查看次数

Laravel Queries Strings

有没有人知道是否可以在Laravel中使用URL查询.

我有以下路线:

Route::get('/text', 'TextController@index');
Run Code Online (Sandbox Code Playgroud)

该页面上的文本基于以下url查询:

http://example.com/text?color={COLOR}
Run Code Online (Sandbox Code Playgroud)

我将如何在Laravel内接近这个?

url query-string laravel laravel-4 laravel-routing

29
推荐指数
3
解决办法
5万
查看次数