JSON - Blender 和 ThreeJS - JSON 中位置 0 处出现意外标记 <

标签 json reactjs three.js blender

我已使用 io_ Three 插件从 Blender 导出了 3D 模型。

现在我尝试使用这样的代码将此模型加载到 ThreeJS 中。

import React, { Component } from 'react';
import * as THREE from 'three';
var loader = new THREE.JSONLoader();
loader.load('./making_a_face10.json', handle_load);

我一直收到相同的错误消息。

Unexpected token < in JSON at position 0

我尝试过使用 THREE.ObjectLoader() 以及此选项 https://github.com/tweedegolf/parsed-model ,但是在 JSON 的位置 0 处一直提示错误。

顺便说一句,我可以像这样访问 JSON:

var JSONdata = require('./making_a_face10.json');

这确实公开了 JSON 内的数据,但我希望 ThreeJS 加载器能够工作。

然后我找到了这个例子https://threejs.org/examples/#webgl_loader_json_blender当我查看源代码时,它显示“模型”正在作为 .js 文件导入?,即他们正在像这样加载它:

loader.load( 'models/animated/monster/monster.js', function ( geometry, materials )...

有足够的 Material 来解释我想要做什么,但没有一个 Material 指出将模型加载为 .js 文件。

还有两个注释 - 我的 JSON 文件的格式看起来非常像这样 https://github.com/mrdoob/three.js/blob/master/examples/models/animated/monster/monster.js我正在使用 npm start

运行本地服务器

如果有任何天才 child 可以帮助我,我将非常感激。

已解决

在 React 项目文件夹中。 .JSON 文件位于我的 /src 文件夹中。它应该位于我的 /public 文件夹中。

最佳答案

正如 Kryten 在评论中提到的那样……您的负载失败了。 JSON 文件中的第一个字符不是“<”。这看起来像一个 XML 响应失败 header 。

三个加载器在内部使用 XMLHTTPRequest...您可以尝试直接使用 XMLHTTPRequest 加载 JSON,然后记录输出以查看错误是什么。

关于JSON - Blender 和 ThreeJS - JSON 中位置 0 处出现意外标记 <,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49394040/

相关文章:

iphone - 如何将 JSON 序列化数据转换为 NSDictionary

python - 使用不带 Gzip 编码的 POST 检索 JSON 内容后,无法解码 JSON 对象

json - 如何在Grails Controller 中处理在JSONObject中发布BigInteger?

python - 使用Python访问JSON对象中包含的列表

android - React Native 中的 Picker 和 PickerIOS 错误

javascript - 在React控制组件中清除datalist输入onClick

javascript - 将blade user.id路由传递给react js组件

three.js - 如何用三个js将多个纹理剪辑为多边形

javascript - 自定义几何体和面法线的问题

javascript - Three.js:为什么我的鞋子装反了,我该如何摆脱那种疯狂的金属外观?