V2EX n0099
 n0099's recent timeline updates
n0099

n0099

V2EX member #323482, joined on 2018-06-19 02:26:22 +08:00
n0099's recent replies
Mar 20
Replied to a topic by Ayanokouji Java JDK 26 发布,非 lts 版本
@netabare #40 那么多死守 PHP 5.6 的。我倒是反而感觉 PHP 「语言」升级不升级都无所谓了,反正可见的时间里他也就那个样子,我对这个语言和这个语言背后的社区不抱任何期望。
@netabare #14 也是因为以前跟四叶壬聊天的时候经常发现四叶壬回复特别容易给出很`鸡同鸭讲`的`tl;dr`,或者识别一个`臭名昭著的 430-四叶话语体系`之 pattern 立刻不读我的链接`光速转进`一个我根本不关心的话题
@netabare 不懂,听上去感觉 邪恶组织四叶重工 好像已经完蛋了,还是给 AI 替代吧。
@kdwnil #48 等您也被全网正义封杀到连封伊妹儿都发不出去时就知道了
From: "n0099" <[email protected]>
Date 2021-04-20, 08:13
To: "Gao Yuan3" <[email protected]>
CC: "office365support" <[email protected]>, "OTS_SPO" <[email protected]>
Subject: Re:SR_2021041390874_SharePoint 服务端不支持 method 为 OPTIONS 的浏览器 CORS preflight 请求

没有了,十分感谢您这一周来的工作

------------------ Original ------------------
From: "Gao Yuan3"<[email protected]>;
Date: Tue, Apr 20, 2021 02:10 PM

用户您好,

这个 test.aspx 文件是属于您的 OneDrive 文件,访问时要在具有权限的前提下访问,例如登录您这个 OneDrive 文件所在的账号,才可以访问这个文件的数据。

没有权限而直接去访问,是会提示登录的:


如果这个类型的文件(aspx)允许通过匿名链接进行对外共享,那么外部用户无需具有权限,直接就可以访问。但是由于微软很早之前就取消了公共网站(任何人都可以访问),虽然通过将 aspx 文件设置为主页的方式并通过匿名链接共享可以达到公共网站的效果,但是由于已经取消了公共网站,aspx 文件也是不可以通过匿名链接的方式对外共享的,综上目前是无法通过匿名链接的方式共享 aspx 文件的
https://support.microsoft.com/zh-cn/office/%E8%A6%81%E5%81%9C%E7%94%A8%E7%9A%84-sharepoint-%E5%85%AC%E5%85%B1%E7%BD%91%E7%AB%99-e86bfd2f-5c7d-446f-a430-7cfcc0130916?ui=zh-CN&rs=zh-CN&ad=CN


请问您对此工单是否还有其他疑问?谢谢。

------------------ Original ------------------
From: n0099 <[email protected]>
Sent: 2021 年 4 月 20 日 5:46

我删除所有文件后重新上传可以正常访问了,但如何让它可以被公网访问?现在不带 cookie 访问 https://n0099.sharepoint.cn/sites/test/Shared%20Documents/test.aspx 会重定向到 o365 登录页

------------------ Original ------------------
From: "n0099"<[email protected]>;
Date: Tue, Apr 20, 2021 05:01 AM

我已经执行过了 Set-SPOSite -Identity https://n0099.sharepoint.cn/sites/test -DenyAddAndCustomizePages $false
html 里没有任何注释标签,内容如下:

<html>
<head>
<title>test</title>
</head>
<body>
<div id="root"></div>
<script src="https://unpkg.com/react/umd/react.development.js"></script>
<script src="https://unpkg.com/react-dom/umd/react-dom.development.js"></script>
<script>
const e = React.createElement;

ReactDOM.render(
e('div', null, 'Hello World'),
document.getElementById('root')
);
</script>
<img src="https://placeimg.com/640/480/any/grayscale" />
</body>
</html>

但还是弹出浏览器下载

------------------ Original ------------------
From: "Gao Yuan3"<[email protected]>;
Date: Mon, Apr 19, 2021 04:47 PM

用户您好,

请问您对此工单是否还有其他疑问,是否可以关闭归档此工单?期待您的消息。

------------------ Original ------------------
From: Gao Yuan3
Sent: 2021 年 4 月 19 日 12:26

用户您好,

由于我们的技术支持范围不涉及开发,对这一部分接触也不是很多。
据我们了解,改 Set-SPOSite -Identity https://gytest.sharepoint.cn/sites/test -DenyAddAndCustomizePages $false 后,弹出下载文件可能是注释的问题,当 ASPX 文件中出现 HTML 的注释语言<!-- -->不是很多的时候,是可以允许一定的容错的,但是这种非标准的注释有很多的时候,就会有问题了。

您可以尝试将有问题的 ASPX 文件复制一份,然后将副本中所有的“<!”替换成“<%--”,所有的“-->”替换成“--%>”,再上传此副本到云端来测试打开。
我这边测试可以在网页端直接打开了。



修改之前


------------------ Original ------------------
From: n0099 <[email protected]>
Sent: 2021 年 4 月 17 日 14:57

我之前已经在 3.中说明了你们设置了 acao:* response header 就是为了允许跨域请求下载的,但忘了设置 options 请求所以无法响应需要 preflight 的跨域请求(在此是带 range 分段下载文件 header 请求会让浏览器触发 preflight )

刚才研究了下 spo 如何托管 htmljs:
https://techcommunity.microsoft.com/t5/sharepoint/open-html-files-in-browser-sharepoint-online/m-p/130620
https://docs.microsoft.com/en-us/sharepoint/dev/solution-guidance/security-permissivesetting
https://docs.microsoft.com/en-us/sharepoint/allow-or-prevent-custom-script
我已经用 management shell 执行了 Set-SPOsite <SiteURL> -DenyAddAndCustomizePages 0 ,但截至目前访问 spo 文档中的.aspx 文件仍然是弹出浏览器下载文件而不是浏览器显示 html

------------------ Original ------------------
From: "Gao Yuan3"<[email protected]>;
Date: Sat, Apr 17, 2021 08:31 AM

您好,

感谢您的回复。
设置/允许跨域请求数据,这个如果在本地 SPO 服务器上面应该是可以设置的,设置后浏览器 fetch OneDrive 的文件起码是能 promise 的,但是如果在 online 端,这些都是由后台的设置决定的,作为最终用户我们法更改后台的设置,如果被 CORS policy 阻止,应该就是不可跨域,实在抱歉。

关于托管自定义 html js ,由于我们并非开发团队,平时主要处理的都是 SPO 使用上的问题,这个说实话平时也没怎么接触过这类问题,我找工作日时间和同事沟通了解一下再给您回复吧。

------------------ Original ------------------
发件人: n0099 <[email protected]>
发送时间: Saturday, April 17, 2021 7:16:16 AM
收件人: Gao Yuan3 <[email protected]>
抄送: office365support <[email protected]>; OTS_SPO <[email protected]>
主题: Re:SR_2021041390874_SharePoint 服务端不支持 method 为 OPTIONS 的浏览器 CORS preflight 请求

请问 sharepoint online 可以托管自定义 html js 吗?如果你们实在不愿意兼容 preflight 请求恐怕我只能直接托管到 sharepoint.cn 域上了

------------------ Original ------------------
From: "Gao Yuan3"<[email protected]>;
Date: Fri, Apr 16, 2021 04:47 PM

用户您好,

涉及到前端开发,以及跨域请求的问题,我这边也确实不是很了解,感谢您的理解。
https://www.21vbluecloud.com/office365/usersupport_o365/

对此类问题,我们所接触到的资源也很有限,无法给您提供更多信息,这个工单就给您关闭了。
如果您之后遇到与 O365 服务本身相关的问题,欢迎您再联系我们。
再次感谢您的理解。

------------------ Original ------------------
From: n0099 <[email protected]>
Sent: 2021 年 4 月 15 日 23:31

1.我知道这个问题属于自定义开发范围的问题,但你们解决这个问题并不困难,例如 iis10 中只需要改动几行配置即可实现: https://docs.microsoft.com/en-us/iis/extensions/cors-module/cors-module-configuration-referencehttps://blogs.iis.net/iisteam/getting-started-with-the-iis-cors-module
2.并不是我想要主动发 options 请求,而是浏览器为了检查服务端是否允许 cors (在这里是询问是否允许 range header ,也就是 Access-Control-Request-Headers: Range ),才去发送 preflight 请求,服务端应该返回具体允许的 cors 范围(在这里是 Access-Control-Allow-Headers: Range ),而不是 http405 或者你们所说的未支持 options method

而且这个 405 响应中的 allow header ( https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Allow )也写了 options ,这与文档并不符
3.最开始我提到过“而在其他 GET 请求中 response header 中有设置 Access-Control-Allow-Origin: *,所以可以跨域请求”
例如

只要 request header 中有 origin (不论值如何),response header 中都会有 access-control-allow-origin: *,也就是服务端允许来自任何域的 cors 请求,因此你们设计上是允许跨域请求此 api 的,但由于某些原因没有设置 preflight 请求的响应,导致需要 preflight 的 cors 请求无法进行

------------------ Original ------------------
From: "Gao Yuan3"<[email protected]>;
Date: Thu, Apr 15, 2021 07:57 PM

用户您好,

浏览器的请求机制,我这边也不是很了解,因为涉及到开发,对此类问题我们的支持也比较有限。
但是可以看到 OPTIONS 这个请求方式就是不支持的。

------------------ Original ------------------
发件人: n0099 <[email protected]>
发送时间: Thursday, April 15, 2021 7:35:17 PM
收件人: Gao Yuan3 <[email protected]>
主题: Re:SR_2021041390874_SharePoint 服务端不支持 method 为 OPTIONS 的浏览器 CORS preflight 请求

产品设计不支持 cors preflight 从而导致浏览器内无法跨域请求?

------------------ Original ------------------
From: "Gao Yuan3"<[email protected]>;
Date: Thu, Apr 15, 2021 10:51 AM

用户您好,

感谢您的回复,由于我们这边是 O365 云端服务的支持团队,技术支持限于 Office 365 在线服务本身的故障或使用方面的问题,如果涉及到自定义开发,对于浏览器的调用机制,我这边也不是很了解,对此类问题我们的支持也比较有限,非常感谢您的理解。
https://www.21vbluecloud.com/office365/usersupport_o365/

以 user 为例,可以看到 OPTIONS 方法就是不被支持的,此限制为产品设计。

GET 是可以的。

请问您对该工单是否还有其他疑问?谢谢。

------------------ Original ------------------
From: n0099 <[email protected]>
Sent: 2021 年 4 月 14 日 16:54

但我需要在浏览器内调用 graph api ,而浏览器会发送 method 为 options 的 cors preflight 请求,这并不是我要发送的
如果浏览器通不过 preflight 就不会发出我实际要发出的 get 请求

------------------ Original ------------------
From: "Gao Yuan3"<[email protected]>;
Date: Wed, Apr 14, 2021 11:08 AM

用户您好,

OPTIONS 并不是我们常见的一个获取数据的方法,此方法可能就是不被支持的。
常用的方式是通过 Graph API 来获取数据,可以从官方文档中看到,也是只支持 GET 方法,没有 OPTIONS 方法
https://docs.microsoft.com/en-us/graph/use-the-api?view=graph-rest-1.0



------------------ Original ------------------
From: Gao Yuan3
Sent: 2021 年 4 月 13 日 19:31

用户您好,

根据您对问题的描述,我谨在此阐述我们双方针对这个问题所涉及范围界定:

问题定义:需要在浏览器前端中使用 range header 下载部分文件内容,但由于 SharePoint 服务端对任何 options 请求都返回 405 导致浏览器无法通过 cors preflight 进而发出实际跨域请求,而在其他 GET 请求中 response header 中有设置 Access-Control-Allow-Origin: *,所以可以跨域请求


问题范围:我们将协助您解决该问题,并将在该问题解决后关闭此工单。(不在 O365 技术支持范围内的问题除外)

接下来,我们将开始合作解决这个问题。如果您对以上的问题范围界定有任何异议,请尽快告知。如果您有其他任何疑问,也欢迎随时与我联系。

------------------ Original ------------------
From: Gao Yuan3
Sent: 2021 年 4 月 13 日 19:09

尊敬的 n0099 先生/女士 :
您好!感谢您联系世纪互联 Office 365 技术支持中心。我是 Office 365 技术支持工程师 Cowan ,很高兴有机会协助您处理问题! 您可以随时通过该工单号码 SR_2021041390874 与我们取得联系。
为了更好地保障技术支持工作的质量,请您在回复邮件时选择“回复所有人”。
感谢您的理解与支持,祝您工作顺利!
About     Help     Advertise     Blog     API     FAQ     Solana     2480 Online   Highest 6679       Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 24ms UTC 04:00 PVG 12:00 LAX 21:00 JFK 00:00
Do have faith in what you're doing.
ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86