私はThree.jsアプリケーションを書いています。その一部として、Three.jsのBlender-> JSONエクスポーターを使用して、JSONファイルとしてエクスポートされたブレンダーモデルをロードします。ローカルコンピューター(Windows 7)でWAMPServer 2.2を構成しました。これを使用して、WebサイトをリモートサーバーにFTPで転送し、友人などに見せびらかす前に、Webサイトをテストします。
このJSONファイルのロードはローカルテストサーバーでは正常に機能しますが、サーバーにアップロードすると、Firebug、Firefox16.0.2で次のエラーが発生します。
SyntaxError: JSON.parse: unexpected character
var json = JSON.parse( xhr.responseText );
three.js (line 7810)
JSONファイルを正常に検出しています-GETはFirebugに表示されます。モデルのロードは、私が知る限り、スクリプト全体で私が持っている唯一のJSONのロードです。モデルは、ローカルでは表示されますが、リモートでは表示されません。負荷が含まれている関数は次のとおりです。
//Adds a unit to the scene. Assumes Init() hasn't been called on the unit yet.
function pubAddUnit(unit, coord, modelSrc)
{
//Do whatever initialization the unit has to do
unit.Init();
//Store the unit in its position on the grid
units[coord.y][coord.x] = unit;
//Load the unit model
var loader = new THREE.JSONLoader();
loader.load(modelSrc,
//Function called once the unit model is loaded
function(geometry) {
//Create a new material for the unit
var material = new THREE.MeshFaceMaterial();
var mesh = new THREE.Mesh(geometry, material);
//Store the unit geometry and mesh into their respective grids
unit.SetGeo(geometry);
unit.SetMesh(mesh);
//Move the mesh to the correct spot
mesh.position = TransCoord2(coord);
mesh.scale.set(40, 40, 40);
//Add the mesh to the scene
scene.add(mesh);
//Update the scene, now with the mesh in
update();
});
}
これが、リモートサーバーに表示されるjavascriptファイルです。なぜこれが起こっているのかについてのアイデアはありがたいです。
編集:私はFTPにFileZillaを使用しています。サーバー上のJSONファイルのファイルサイズがローカルのファイルサイズと異なることに突然気づきましたが、それが心配する必要があるかどうかはわかりません-おそらく行末か何かですか?
また、ここにJSONファイルがあります。