javascript - 如何使用ajax请求从box.com服务获取文件内容?

标签 javascript ajax box-api

我尝试使用直接链接从 box.com 获取 CSS 文件的内容并将其附加到 head 标签,但它不起作用。

$.ajax({                
        url: "https://app.box.com/shared/static/" + file_hash + ".css",                
        data: { client_id : '6guib1cgnk8uk2kdre45rjg7lt2xayegl94' },
        type: "GET",
        async: false,
        crossDomain: true,
        dataType: "text",
        success: function (data) {
          $("<style></style>").appendTo("head").html(data);
        },
        error: function (error) {
            console.log(error);
        }
    }
);

有人可以解释一下如何让它发挥作用吗?

它返回一个错误对象:

Object
abort: function ( statusText ) {
always: function () {
complete: function () {
done: function () {
error: function () {
fail: function () {
getAllResponseHeaders: function () {
getResponseHeader: function ( key ) {
overrideMimeType: function ( type ) {
pipe: function ( /* fnDone, fnFail, fnProgress */ ) {
progress: function () {
promise: function ( obj ) {
readyState: 0
responseText: undefined
setRequestHeader: function ( name, value ) {
state: function () {
status: 0
statusCode: function ( map ) {
statusText: "error"
success: function () {
then: function ( /* fnDone, fnFail, fnProgress */ )

最佳答案

这是我执行您的代码时收到的错误:

XMLHttpRequest cannot load https://app.box.com/shared/static/2mbz6a9olevi86oi43kk.css. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'https://example.com' is therefore not allowed access.

问题是您正在发出跨域 (CORS) 请求,但是 JavaScript is limited to requesting resources on the same domain除非目标应用程序明确允许。

Box 默认不允许 CORS 请求,但是 they will enable them on per-application basis 。您需要联系 Box 支持人员并说明您的用例。

关于javascript - 如何使用ajax请求从box.com服务获取文件内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24262596/

相关文章:

javascript - 尝试启动我的 React 应用程序时出现异常错误。它说 CleanWebpackPlugin 不是构造函数

javascript - 无法找到 div 元素的子元素

javascript - AngularJS ng-repeat 的性能问题

ajax - 如何在 Laravel 中安装 vue-laravel-image-crop-upload?

ajax - 如何在 Spring MVC 中以 Json 形式返回对象列表

php - 测试与数据库的连接,返回 true 或 false

python - 如何在python中获取Box的授权码

javascript - 在 componentDidMount 中卸载什么

java - 在 POST 期间突然收到 405 方法不允许在 box-api 中创建文件夹

与 Windows 相比,Python 请求在 Linux 中需要更长的时间才能返回