Javascript Safari中的React/Node文件上载失败
最近在Safari中尝试上载文件时发现了一个问题。macOS 10.12.3上的Safari 10.0.3和iOS 10.3.1上的mobile Safari都存在同样的问题。这段代码在Google Chrome和IE中都能完美工作,但在Safari中会无限期地挂起 另外值得注意的是:当没有附加文件时,FormData会在Safari中成功发布 以下是我的JSX/HTML:Javascript Safari中的React/Node文件上载失败,javascript,reactjs,safari,Javascript,Reactjs,Safari,最近在Safari中尝试上载文件时发现了一个问题。macOS 10.12.3上的Safari 10.0.3和iOS 10.3.1上的mobile Safari都存在同样的问题。这段代码在Google Chrome和IE中都能完美工作,但在Safari中会无限期地挂起 另外值得注意的是:当没有附加文件时,FormData会在Safari中成功发布 以下是我的JSX/HTML: <Button bsStyle="primary" onClick={() => this.refs.sele
<Button bsStyle="primary" onClick={() => this.refs.selectFiles.click()}>
Browse <input style={{ display: 'none' }} ref="selectFiles" type="file" onChange={this.handleAttachments} accept=".jpg,.jpeg,.png,.gif,.apng,.tiff,.tif,.bmp,.pdf,.xcf" multiple />
</Button>
我发现imgur在Safari的移动站点上完美地实现了这一功能
以下是他们网站上POST
中图像的FormData示例:
------WebKitFormBoundaryvnoeYeAi7QAdnoE1
Content-Disposition: form-data; name="image"; filename="image.jpg"
Content-Type: image/jpeg
------WebKitFormBoundaryvnoeYeAi7QAdnoE1--
下面是我的文件“POST”中FormData的一个示例:
------WebKitFormBoundaryobH1qsBmUuSGQHiX
Content-Disposition: form-data; name="Screen Shot 2017-04-11 at 4.16.54
PM.png"; filename="Screen Shot 2017-04-11 at 4.16.54 PM.png"
Content-Type: image/png
------WebKitFormBoundaryobH1qsBmUuSGQHiX--
经过大量研究,我发现Safari不能很好地使用Windows身份验证,这就是我的问题的原因
如果可以,请转到IIS管理器,从Windows身份验证切换到基本身份验证,文件应能成功上载。在
createAction
函数中,什么是action
?@guest271314action
是我在帖子中包含的一些其他FormData字段。没有尝试过safari。到底发生了什么?@guest271314请求不断旋转。。。已经有20分钟了。你说的“旋转”是什么意思?问题是否在服务器端?
------WebKitFormBoundaryvnoeYeAi7QAdnoE1
Content-Disposition: form-data; name="image"; filename="image.jpg"
Content-Type: image/jpeg
------WebKitFormBoundaryvnoeYeAi7QAdnoE1--
------WebKitFormBoundaryobH1qsBmUuSGQHiX
Content-Disposition: form-data; name="Screen Shot 2017-04-11 at 4.16.54
PM.png"; filename="Screen Shot 2017-04-11 at 4.16.54 PM.png"
Content-Type: image/png
------WebKitFormBoundaryobH1qsBmUuSGQHiX--