浏览器未转换&;amp;(&;)


Browser not converting & (&) when passed through URI

我有一个RSS 2.0 Item元素,它需要一个RSS验证链接。我想在链接元素中插入一个URI来链接到我网站上的页面。在这个URI中,我使用&而不是&来分隔我通过URI传递的不同参数。当我这样做时,RSS能够被验证,但是当我将链接元素中的URI复制并粘贴到浏览器中时,浏览器不会将其转换为&来表示URI参数的分离。

我使用的XML编码是UTF-8。

我使用的URI是:

http://www.stacks.co.uk/rapmusic/albums.php?echonest_id=ARD5VN51187B9B8D29&deezer_id=3505&artist_name=Jamie+Foxx&artist_image=http%3A%2F%2Fuserserve-ak.last.fm%2Fserve%2F_%2F95148.jpg

我还尝试使用%26而不是&,但即使这样也不允许我转到我的URI。

为了不破坏RSS XML,您将始终需要在带参数的URL中使用&而不是&。当RSS为提要呈现时,它将自动将ASCII符号转换为可用的URL等效符号;即:

http://example.com/script.php?param1=foo&param2=bar

将变成:

http://example.com/script.php?param1=foo&param2=bar

然而,如果您查看实际的XML,它仍然会显示解码后的值,所以不要让它欺骗您。大约一个月前我也有同样的问题。