获取对象 XmlDocument 值
Posted
技术标签:
【中文标题】获取对象 XmlDocument 值【英文标题】:Get Object XmlDocument value 【发布时间】:2021-09-30 01:40:29 【问题描述】:我正在执行对外部 api 的 ajax 调用(无法修改)以将存储文件上传到文件夹中。此请求必须返回一个路径(例如“C:\Doctos\File.pdf”,但在 console.log 返回如下内容之后:
#document
"C:\Doctos\File.pdf"
所以我的问题是,我该怎么做才能只获取我想要的文本而不对 api 进行任何更改(因为我无法做到)。
这是我正在使用的 ajax 调用。
警察局。此 ajax 调用使用为开发 api 的开发团队提供的结构,因此也无法修改 dataType 等内容
var data = new FormData();
var files = $('#fileUpload').get(0).files;
if (files.length > 0)
data.append("UploadedFile", files[0]);
$.ajax(
type: 'POST',
url: 'api/v1/moreurl/UploadFile',
contentType: false,
processData: false,
data: data,
success: function (data)
var res = data;
//Returns above example
console.log(res);
//Returns something like <p>[object XMLDocument]</p>
$('#MyInput').attr('src', res);
);
【问题讨论】:
【参考方案1】:我会使用正则表达式从接收到的数据中获取所需的字符串。把它放在success
行之后。
var regex = />\"(.*)\"/;
var matched = regex.exec(data);
var result = matched[1];
console.log(result);
正则表达式匹配您示例中最后引用的字符串。
【讨论】:
【参考方案2】:你可以用jQuery获取xml中的数据
$.ajax(
type: 'POST',
url: 'api/v1/moreurl/UploadFile',
contentType: false,
processData: false,
data: data,
success: function (data)
// Get the contents of the xml
var file = $(data).find('string').text();
$('#MyInput').attr('src', file);
);
【讨论】:
以上是关于获取对象 XmlDocument 值的主要内容,如果未能解决你的问题,请参考以下文章
使用带有 C# 的 XmlDocument 读取 XML 数据 - 读取属性数据并拆分结果
使用 XmlDocument 获取 InnerText 或 InnerXml 时保留 XML 实体引用
从 XmlDocument 中获取带有换行符的缩进 XML 的最简单方法是啥?
使用 System.Xml.XmlDocument 时是不是可以从 System.Xml.XmlNode 获取行号/位置?