Javascript 如何在主机页中获取wopi发现

Javascript 如何在主机页中获取wopi发现,javascript,java,ms-wopi,Javascript,Java,Ms Wopi,我正在使用WOPI为web开发一个Office集成,并试图从discovery获得WOPI操作 我知道狗粮/测试的终点,从那里我可以得到发现。但我无法直接在我的web应用程序中获取它,因为它位于不同的域中,所以存在跨源问题 我是否应该将发现存储在API中并将其提供给web应用程序?我猜你在谈论这些。似乎他们将访问控制允许源站标题设置为*,所以这不应该是问题所在 我很快就尝试了这个,它似乎很好: fetch('https://ffc-onenote.officeapps.live.com/host

我正在使用WOPI为web开发一个Office集成,并试图从discovery获得WOPI操作

我知道狗粮/测试的终点,从那里我可以得到发现。但我无法直接在我的web应用程序中获取它,因为它位于不同的域中,所以存在跨源问题


我是否应该将发现存储在API中并将其提供给web应用程序?

我猜你在谈论这些。似乎他们将
访问控制允许源站
标题设置为
*
,所以这不应该是问题所在

我很快就尝试了这个,它似乎很好:

fetch('https://ffc-onenote.officeapps.live.com/hosting/discovery')
.then(response=>response.text())
.then(str=>(new window.DOMParser()).parseFromString(str,“text/xml”))
.then(数据=>console.log(数据))
.catch(函数(错误){
console.log(错误);
});
您可以在此处运行它:


也许还有一个问题,你的域名被添加到了吗?

我想你是在谈论这些。似乎他们将
访问控制允许源站
标题设置为
*
,所以这不应该是问题所在

我很快就尝试了这个,它似乎很好:

fetch('https://ffc-onenote.officeapps.live.com/hosting/discovery')
.then(response=>response.text())
.then(str=>(new window.DOMParser()).parseFromString(str,“text/xml”))
.then(数据=>console.log(数据))
.catch(函数(错误){
console.log(错误);
});
您可以在此处运行它:


也许还有一个问题,您的域名是否已添加到?

回答读者的问题


我和微软的高级项目经理核实了一下,他确认WOPI发现是一个服务器的东西。我们需要在API端获取WOPI发现,并将其保存在缓存中,直到验证密钥验证失败

回答读者的问题


我和微软的高级项目经理核实了一下,他确认WOPI发现是一个服务器的东西。我们需要在API端获取WOPI发现,并将其保存在缓存中,直到验证密钥验证失败

是的,你是对的,但是当我点击相同的url时,我得到了CORS策略已阻止从源站*访问“”处的XMLHttpRequest:对飞行前请求的响应未通过访问控制检查:当请求的凭据模式为“包含”时,响应中的“访问控制允许源站”标头的值不得为通配符“*”。XMLHttpRequest发起的请求的凭据模式由withCredentials属性控制“我从MS收到的电子邮件表明我的域是正确的,但当我点击相同的url时,我得到”CORS策略已阻止从源*访问“”处的XMLHttpRequest:对飞行前请求的响应未通过访问控制检查:当请求的凭据模式为“包括”时,响应中“访问控制允许源”标头的值不得为通配符“*”。XMLHttpRequest发起的请求的凭据模式由withCredentials属性“I Get email from MS”控制,该属性表示添加了我的域