相关疑难解决方法(0)

哪些字符使网址无效?

哪些字符使网址无效?

这些有效的网址是?

  • example.com/file[/].html
  • http://example.com/file[/].html

validation url rfc3986

486
推荐指数
8
解决办法
47万
查看次数

在URL中,是否应使用%20或+编码空格?

在URL中,我应该使用%20或编码空格+吗?例如,在以下示例中,哪一个是正确的?

www.mydomain.com?type=xbox%20360
www.mydomain.com?type=xbox+360
Run Code Online (Sandbox Code Playgroud)

我们公司倾向于前者,但使用URLEncoder.encode(String, String)带有"xbox 360"(和"UTF-8")的Java方法返回后者.

那么,有什么区别?

url urlencode url-encoding

111
推荐指数
5
解决办法
12万
查看次数

网址中的空格?

w3fools声称URL可以包含空格:http://w3fools.com/#html_urlencode

这是真的?URL如何包含未编码的空间?

我的印象是HTTP请求请求行使用空格作为分隔符,格式为{the method}{space}{the path}{space}{the protocol}:

GET /index.html http/1.1
Run Code Online (Sandbox Code Playgroud)

因此URL如何包含空格?如果可以的话,替换空间的做法+来自哪里?

url standards http

63
推荐指数
3
解决办法
13万
查看次数

href语法:文件名中是否有空格是可以的

一直以来我的做法是,当我使用图像时,我将它们命名为 walls_ico,bu_hover

所以当我给出路径他们就像

<img src="images/walls_ico.ico" />
<img src="buttons/bu_hover.png" />
Run Code Online (Sandbox Code Playgroud)

UNTIL现在当我在一个用户上传文件的项目时......

我想知道文件和文件夹之间的空格是否可以

<img src="buttons/bu hover.png" />
Run Code Online (Sandbox Code Playgroud)

html syntax anchor href

45
推荐指数
2
解决办法
7万
查看次数

我应该在数据库中的URL中存储空格吗?如果是这样,在将它们放入<a href="...">时,如何对它们进行编码?

在我的博客中,我将URI存储在实体上以允许它们被定制(和友好).最初,它们可以包含空格(例如"/tags/ASP.NET MVC"),但W3C验证表明空格无效.

这个System.Uri类需要空格,并且似乎按照我想要的方式对它们进行编码(例如/tags/ASP.NET MVC变成/tags/ASP.NET%20MVC),但是我不想创建一个Uri只是扔掉它,这感觉很脏!

注意:没有Html.Encode,Html.AttributeEncode并且Url.Encode将编码"/tags/ASP.NET MVC""/tags/ASP.NET%20MVC".


编辑:我编辑了DataType我的问题部分,因为事实证明DataType没有直接提供任何验证,并且没有内置的URI验证.我在dataannotationsextensions.org上找到了一些额外的验证器,但它只支持绝对URI,它看起来像空格我也有效.

asp.net-mvc w3c-validation data-annotations razor

5
推荐指数
1
解决办法
1670
查看次数

使用httr :: GET vs xmlParse截断URL

我试图用两种不同的方法(xmlParse和httr :: GET)请求一个XML文档,并期望响应是相同的.我用xmlParse得到的响应是我所期望的但是使用httr :: GET我的请求URL在某些时候会被截断.

一个例子:

require(httr)
require(XML)
require(rvest)

term <- "alopecia areata"
request <- paste0("http://eutils.ncbi.nlm.nih.gov/entrez/eutils/egquery.fcgi?term=",term)  

#requesting URL with XML
xml_response <- xmlParse(request)

xml_response %>%
        xml_nodes(xpath = "//Result/Term") %>%
        xml_text 
Run Code Online (Sandbox Code Playgroud)

这应该返回

[1] "alopecia areata"        
Run Code Online (Sandbox Code Playgroud)

现在为httr

httr_response <- GET(request)
httr_content <- content(httr_response)

httr_content %>%
        xml_nodes(xpath = "//Result/Term") %>%
        xml_text 
Run Code Online (Sandbox Code Playgroud)

这回来了

[1] "alopecia"
Run Code Online (Sandbox Code Playgroud)

有趣的是:如果我们检查请求的URL的httr_response元素,那是正确的.只有回应是错误的.

> httr_response$request$opts$url

[1] "http://eutils.ncbi.nlm.nih.gov/entrez/eutils/egquery.fcgi?term=alopecia areata"

> httr_response$url

[1] "http://eutils.ncbi.nlm.nih.gov/gquery?term=alopecia&retmode=xml"
Run Code Online (Sandbox Code Playgroud)

所以在某些时候我的查询词被截断了.如果将整个请求手动放入浏览器,则其行为与预期一致.

任何建议如何解决这个问题将不胜感激.

xml r httr

3
推荐指数
1
解决办法
184
查看次数

Spring RestTemplate getForObject 得到 404

我正在尝试向 Api Rest 发出 get 请求,但我总是收到 404,但是如果尝试在浏览器或 postMan 中复制 queryUrl,它可以完美运行。

restTemplate.getForObject(queryUrl, entity ,Integer.class);

我也试过这个:

HttpHeaders httpHeaders = new HttpHeaders();
httpHeaders.setContentType(MediaType.APPLICATION_JSON);
HttpEntity entity = new HttpEntity(httpHeaders);
log.debug("请求头:" + entity.getHeaders());
ResponseEntity response = restTemplate.exchange(queryUrl, 
HttpMethod.GET, entity, String.class);

但什么都没有改变。谁能帮我?

java rest spring http

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

Response.redirect url在查询字符串中将空格编码为%20

Response.Redirect("./ blah.aspx?key = my value with spaces");

它将浏览器发送到:

mysite/blah.aspx?key=my%20value%20with%20spaces
Run Code Online (Sandbox Code Playgroud)

现在我理解为什么它这样做 - 为了古老的浏览器会扼杀空间.但实际上,我想要的是拥有一个漂亮的URL,其中包含空格而不是%s,因为它的工作原理相同.

有没有办法停止response.redirect urlencoding我的空间?

非常感谢

c# asp.net url

1
推荐指数
1
解决办法
3075
查看次数