2016-12-04 8 views
0

私のWindows 8パーティションではChromeで、Ubuntu 14.04パーティションではFirefoxでこのコードを実行しました。どちらもMIMEタイプに関連するエラーメッセージを表示します。ブラウザはMIMEタイプのために.objjs拡張子のファイルをロードしません

<head> 
     <script type="text/javascript" src="resources/cube.objjs"></script> 
    </head> 

注:タイプは関係していないようですが、私はtype=text/javascriptは、type=application/javascripttype=javascript、そしてまったく入力しないと、私はまだ同じエラーメッセージを取得しようとしました。

Windows上のChromeのエラーメッセージは、そのMIMEタイプ(「アプリケーション/オクテットストリーム」)は、実行可能ではない 厳密なMIMEタイプチェックがあるため

http://localhost:63342/***/GraphicsTownJS2015-master/resources/cube.objjs からスクリプトを実行するために拒否され有効になりました。

とUbuntu上のFirefox用のエラーメッセージがMIMEタイプの不一致が原因でブロックされました http://localhost:63342/***/GraphicsTownJS2015-master/resources/cube.objjs から

資源である(X-Content-Typeの-オプション:nosniff)。

ここで私は両方のケースでWebStorm IDEからこのコードを実行しているcube.objjs

var LoadedOBJFiles = LoadedOBJFiles || {} ; 
LoadedOBJFiles["cube_ex.obj"]= {} 
LoadedOBJFiles["cube_ex.obj"].vertices = [[0,0,0],[0,0,1],[0,1,0],[0,1,1],[1,0,0],[1,0,1],[1,1,0],[1,1,1]] 
LoadedOBJFiles["cube_ex.obj"].normals = [[0,0,1],[0,0,-1],[0,1,0],[0,-1,0],[1,0,0],[-1,0,0]] 
LoadedOBJFiles["cube_ex.obj"].texCoords = [] 
LoadedOBJFiles["cube_ex.obj"].groups = {} 
LoadedOBJFiles["cube_ex.obj"].groups['cube' ] = {} 
LoadedOBJFiles["cube_ex.obj"].groups['cube' ].vertices = LoadedOBJFiles["cube_ex.obj"].vertices 
LoadedOBJFiles["cube_ex.obj"].groups['cube' ].normals = LoadedOBJFiles["cube_ex.obj"].normals 
LoadedOBJFiles["cube_ex.obj"].groups['cube' ].texCoords = LoadedOBJFiles["cube_ex.obj"].texCoords 
LoadedOBJFiles["cube_ex.obj"].groups['cube' ].faces = [[[0,null,1],[6,null,1],[4,null,1]],[[0,null,1],[2,null,1],[6,null,1]],[[0,null,5],[3,null,5],[2,null,5]],[[0,null,5],[1,null,5],[3,null,5]],[[2,null,2],[7,null,2],[6,null,2]],[[2,null,2],[3,null,2],[7,null,2]],[[4,null,4],[6,null,4],[7,null,4]],[[4,null,4],[7,null,4],[5,null,4]],[[0,null,3],[4,null,3],[5,null,3]],[[0,null,3],[5,null,3],[1,null,3]],[[1,null,0],[5,null,0],[7,null,0]],[[1,null,0],[7,null,0],[3,null,0]]] 
LoadedOBJFiles["cube_ex.obj"].groups['cube' ].material ='null' 

です。私はこれを解決するために何ができるかに関する任意のアイデア?ここで

が生成するWebアプリケーションのためのgithubのページですobjjsファイル https://github.com/Squeakrats/OBJLoader

+0

私はこのファイルがJavaScであるため、 'resources/cube.obj.js'のように感じます。 (各ステートメントの末尾にはセミコロンはありません)。ファイル名が正しいと確信していますか? –

+0

組み込みのMIMEタイプを変更できないようです。https://intellij-support.jetbrains.com/hc/en-us/community/posts/206339659-Built-in-Web-Server-settings拡張子を '.js'に変更するか、より良いウェブサーバを使用してください。 – zerkms

+0

ファイル名が正しいです、私はそれほど自信があります。 @zerkmsどのように私は正確に使用するより良いウェブサーバーを見つけることに行くだろうか?また、私の問題を見つけることに感謝します。 –

答えて

0

あなたは.text()

window.onload =() => { 
    fetch("resources/cube.objjs") 
    .then(response => response.text()) 
    .then(obj => { 
    var script = document.createElement("script"); 
    script.textContent = obj; 
    document.head.appendChild(script); 
    console.log(LoadedOBJFiles); 
    }) 
} 

plnkrの価値を約束する.textContentセットで<script>要素を作成し、.objjsファイルを取得するためにfetch()を利用することができますhttp://plnkr.co/edit/WFDIhnsIjYJ8T8ExAdvj?p=preview

関連する問題