问题标签 [relative-url]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
928 浏览

css - Webpack:覆盖 SASS 中 @font-face 的 url (Glyphicons)

我已导入"glyphicons-halflings": "1.9.0",其中不包含实际字体。因此,字体相对于我的应用程序存储在app/assets/fonts.

我正在处理这样的错误:

对我来说,这似乎定义的 urlnode_modules/glyphicons-halflings/scss/glyphicons-halflings/_glyphicons-halflings.scss没有被正确覆盖

_glyphicons-halflings.scss定义

我自己的app/scss/_font.scss定义

这两者之间的唯一区别是网址。我定义了_font.scss(或者更确切地说,application.scss)的相对路径,但是 webpack 无法解析glyphicons-halflings模块中定义的 url。

这两个文件都导入到app/scss/application.scss

我已经像这样设置了 webpack: webpack.common.js

作为参考,我的文件夹结构是这样的:

TL;DRglyphicons-halflings1.9.0 定义了一个@font-face我无法覆盖的内容(因为 url 错误)。所有 SASS、webpack 加载器管道都是'style', 'css?sourceMap', 'resolve-url', 'sass?sourceMap'

0 投票
1 回答
803 浏览

c# - 从 HtmlAgilityPack.HtmlDocument 中的某个节点获取图像绝对 URL

我想从互联网上获取一些网页,并通过在 C# 中使用 HtmlAgilityPack 获取页面上某些图像的绝对 URL。

问题是...

网站会先将URL重定向到另一个 URL,然后标签中的src属性是相关 URL<img>


目前,我有一些这样的代码:

上面的代码从给定的示例 url 中获取网页,并<img>从 DOM 树中获取一些元素,并获取src它的属性。

如果<img>有绝对网址,它就可以工作。但不幸的是,我要处理的网站给了我一个相关的 URI(例如/img/01.png)。我需要绝对 URL,以便我可以对图像进行更多选择。

所以,我需要知道什么 URL 是给定的基本 URLsrc,但失败了。或者,换句话说,我不知道如何在redirect之后获取网页的位置


服务器端不是我的(我无法控制它)。

0 投票
1 回答
369 浏览

python - 是否有 python 函数用相对 url 路径替换绝对 url?

我正在抓取一个网站并保存选定的页面以供离线浏览。当然,页面之间的链接被破坏了,所以我想对此做点什么。在 python 中是否有一种简单的方法可以在不重新发明轮子的情况下将这样的 url 路径相对化:

我知道该函数需要两个 url 路径来确定相对路径,因为链接资源的路径是相对于它出现的页面的。

0 投票
0 回答
72 浏览

ruby-on-rails - 保存在帖子编号文件夹中的图像的相对 url - Railscarrierwave

我想将我的rails图像保存在与帖子编号相对应的文件夹中,如下所示:

www.domain.com/posts/21/pictures/1.jpg

上传器设置正确,但我只能使用确切的 url 而不是相对路径访问图片。在 show post view 上www.domain.com/posts/21,我使用相对路径,例如:

图像指向:

如何确保基本网址包含帖子编号?

0 投票
1 回答
9497 浏览

node.js - nodejs中的相对url到绝对url

我有这样的网址:

http://example.com/path/to/css/../../images/test.jpg

我想将其转换为绝对值,如下所示:

http://example.com/path/images/test.jpg

我正在寻找 Nodejs 中的一个模块来做同样的事情。模块,路径,做同样的事情。但是(path.resolve) 也以目录路径为前缀。

我正在寻找类似的东西,但对于网址。

0 投票
1 回答
31 浏览

javascript - What determines the prefix used when you set a relative path in javascript parent.location

I am working on a C# MVC website, and have a popup that redirects its parent with a window.parent.location=newRelativePath statement in JavaScript (and then calls a custom method to hide the popup).

In one place in my application, the redirection works great. The browser adds the correct protocol, host and domain at the start of the relative URL that I pass in, and navigates correctly. In another place in my application, the EXACT SAME CALL (i.e. newRelativePath is the same, being called from a popup, parent window has a URL that follows the same kind of format) doesn't work because the browser not only adds the protocol, host and domain, but also adds the controller name from the path of the prior page at the start of the URL (I get a 404 error saying the url "/domain/oldcontroller/newcontroller/action" cannot be found)

In both cases, my original parent window URL is in the format "protocol://host/domain/controller/action/id?querystring", and newRelativePath is in the format "controller/action?querystring"

I don't see any difference in the format of window.location or window.parent.location at the different spots in the application, but something must be different since the browser treats the relative URL I feed in differently - any ideas what that might be?

Thanks very much for your assistance!

0 投票
0 回答
136 浏览

javascript - 如何处理 Chrome 扩展 3rd 方库中的相对协议 URL

我正在开发一个依赖于 3rd 方 javascript 库的 Chrome 扩展。在库的代码中,其资源和 API 端点的所有 URL 都使用相对协议,例如:

//blah.com/api/get-the-stuff/

问题是,当从扩展中进行调用时,我认为 URL 变成了这样:

chrome-extension://blah.com/api/get-the-stuff/

显然这是行不通的。一种解决方案是将 3rd 方库更改为完整的 URL,例如:

https://blah.com/api/get-the-stuff/

这可行,但实际上维护此库的修改版本是不可持续的。有没有办法处理这个?

我认为chrome.webRequest API看起来很有希望在请求发送之前重写 URL,但是这些相对协议 URL 在触发此 API 上的侦听器之前似乎失败了。请求在开发者控制台的网络选项卡中显示为:

chrome-extension://invalid/

这是 Chrome 在 chrome-extension://blah.com/api/get-the-stuff/创建请求之前对我的 URL 所做的重写吗?我是否需要以某种方式更改我的清单以允许触发这些“错误”的 URL 请求,以便我可以重写它们?

或者,也许我完全是在叫错树?

0 投票
1 回答
781 浏览

css - 使用 w3 总缓存插件为 wordpress 生成的缩小 css 文件时如何处理 css 中的相对字体链接

我必须在另一个开发人员使用自定义主题设置的 wordpress 网站上解决一些问题。主题包括一个style.css引用同一主题中字体文件的文件:

没有缩小 style.css 文件被加载并且字体指向<base-url>/wp-content/themes/<theme-name>/fonts. 启用CSS minfy功能后,站点无法加载字体文件,因为相对链接仍然相同并且现在指向<base-url>/wp-content/cache/minify/fonts. 该位置不存在字体文件夹。

我尝试上传主题fonts/文件夹,wp-content/cache/minify只要字体文件重命名为.old文件或整个文件夹在服务器端被删除,该文件夹就不起作用。不知道这是W3 Total Cache还是其他进程的作用。

未启用 CDN 支持。CSS minfy 功能的配置如下所示:

在此处输入图像描述

由于我对 Wordpress 还很陌生,因此我将不胜感激任何关于我可以研究的解决方案或方法的提示。

我知道我可以尝试将字体文件直接嵌入到 css 文件中,但由于文件大小,不需要这种方法。所以我基本上是在寻找如何使用W3 Total Cache扩展来处理这个问题的默认方法。

注意:用绝对 url 替换相对 url不是一个选项,因为该站点用于具有子目录和主域级别的不同环境中。

更新我发现这个问题似乎是插件内部的一个错误,它与使用包括空格在内的文件名有关。已经更新了上面的参考代码。W3 Total Cache的版本是 0.9.6

0 投票
1 回答
1739 浏览

asp.net-core - Asp.Net Core:Swagger-UI 请求不起作用(不是相对的)

我们正在使用 Asp.Net Core 创建一个带有 Swagger 的 REST 服务。我们将服务托管在这样的 URL 上:

https://www.mywebsite.com/myservice

使用以下代码:

... Swagger-UI 在以下位置正确加载:

https://www.mywebsite.com/myservice/swagger/

但是当我尝试使用 Execute-Button 通过 UI 发出请求时,我得到了 404,因为 UI 尝试在 URL 中没有 /myservice/ 的情况下执行请求:

https://www.mywebsite.com/v1/cars

代替

https://www.mywebsite.com/myservice/v1/cars

如何正确配置服务,以便 Swagger UI 调用也能正常工作?

暗示:

这应该以通用的方式完成(如 UI 的 ../),因为我们会将服务部署在不同的环境中,因此 www.mywebsite.com 在每个环境中都不相同。

谢谢你的帮助!

问候,

彼得

0 投票
2 回答
2489 浏览

url - 在 Go 中将相对 URL 转换为绝对 URL

我正在编写一个小型网络爬虫,并且我正在爬取的网站上的许多链接都是相对的(例如,它们是/robots.txt)。如何将这些相对 URL 转换为绝对 URL(所以/robots.txt=> http://google.com/robots.txt)?Go 有内置的方法来做到这一点吗?