从 URL 构建 XML 对象时过早结束文件
Getting Premature end of file when building an XML object from a URL
我正在尝试 运行 以下代码 val podcastXml = XML.load(new URL(feed))
其中有问题的 Feed 是 https://fourfingerdiscount.podbean.com/feed/
我可以在我的浏览器中正常加载提要,但我得到了一个
error: org.xml.sax.SAXParseException; lineNumber: 1; columnNumber: 1; Premature end of file.
当我尝试 运行 那个代码反对它时。
有趣的是,当我尝试在浏览器中 curl
提要 URL 时,它是空的。
知道我做错了什么吗?我觉得好像缺少一个配置选项。
另外值得一提的是,一些提要工作正常,例如 http://maximumfun.org/feeds/are.xml
从 HTTPS URL 读取并不像这个 new URL(feed)
那样直接。它并没有那么容易地获得所需的 XML 内容,而是一个空响应,因此 SAXParseException
.
但是可以检索数据,其中一种方法是旧的HttpsUrlConnection
。但是也有一些包装库可以促进它,例如 scalaj-http。有了它,您可以进行如下操作:
import scalaj.http.Http
val url = "https://fourfingerdiscount.podbean.com/feed/"
val xml = Http(url).execute(XML.load).body
// xml is a parsed scala.xml.Elem with the contents you were looking for
我正在尝试 运行 以下代码 val podcastXml = XML.load(new URL(feed))
其中有问题的 Feed 是 https://fourfingerdiscount.podbean.com/feed/
我可以在我的浏览器中正常加载提要,但我得到了一个
error: org.xml.sax.SAXParseException; lineNumber: 1; columnNumber: 1; Premature end of file.
当我尝试 运行 那个代码反对它时。
有趣的是,当我尝试在浏览器中 curl
提要 URL 时,它是空的。
知道我做错了什么吗?我觉得好像缺少一个配置选项。
另外值得一提的是,一些提要工作正常,例如 http://maximumfun.org/feeds/are.xml
从 HTTPS URL 读取并不像这个 new URL(feed)
那样直接。它并没有那么容易地获得所需的 XML 内容,而是一个空响应,因此 SAXParseException
.
但是可以检索数据,其中一种方法是旧的HttpsUrlConnection
。但是也有一些包装库可以促进它,例如 scalaj-http。有了它,您可以进行如下操作:
import scalaj.http.Http
val url = "https://fourfingerdiscount.podbean.com/feed/"
val xml = Http(url).execute(XML.load).body
// xml is a parsed scala.xml.Elem with the contents you were looking for