Explorar el Código

Merge pull request #18662 from Zielon/gltf_loader_request_headers

GLTFLoader: Set request header on FileLoader
Mr.doob hace 5 años
padre
commit
0a818bc85a

+ 0 - 10
docs/api/en/loaders/FileLoader.html

@@ -69,9 +69,6 @@
 			See [page:.setMimeType]. Default is *undefined*.
 		</p>
 
-		<h3>[property:Object requestHeader]</h3>
-		<p>The [link:https://developer.mozilla.org/en-US/docs/Glossary/Request_header request header] used in HTTP request. See [page:.setRequestHeader]. Default is *undefined*.</p>
-
 		<h3>[property:String responseType]</h3>
 		<p>The expected response type. See [page:.setResponseType]. Default is *undefined*.</p>
 
@@ -102,13 +99,6 @@
 			of the file being loaded. Note that in many cases this will be determined automatically, so by default it is *undefined*.
 		</p>
 
-		<h3>[method:FileLoader setRequestHeader]( [param:Object requestHeader] )</h3>
-		<p>
-			[page:object requestHeader] - key: The name of the header whose value is to be set. value: The value to set as the body of the header.<br /><br />
-
-			Set the [link:https://developer.mozilla.org/en-US/docs/Glossary/Request_header request header] used in HTTP request.
-		</p>
-
 		<h3>[method:FileLoader setResponseType]( [param:String responseType] )</h3>
 		<p>
 			Change the response type. Valid values are:<br />

+ 12 - 0
docs/api/en/loaders/Loader.html

@@ -50,6 +50,11 @@
 			Default is the empty string.
 		</p>
 
+		<h3>[property:Object requestHeader]</h3>
+		<p>
+			The [link:https://developer.mozilla.org/en-US/docs/Glossary/Request_header request header] used in HTTP request. See [page:.setRequestHeader]. Default is empty object.
+		</p>
+
 		<h2>Methods</h2>
 
 		<h3>[method:void load]()</h3>
@@ -89,6 +94,13 @@
 			[page:String resourcePath] — Set the base path for dependent resources like textures.
 		</p>
 
+		<h3>[method:Loader setRequestHeader]( [param:Object requestHeader] )</h3>
+		<p>
+			[page:object requestHeader] - key: The name of the header whose value is to be set. value: The value to set as the body of the header.<br /><br />
+
+			Set the [link:https://developer.mozilla.org/en-US/docs/Glossary/Request_header request header] used in HTTP request.
+		</p>
+
 		<h2>Source</h2>
 
 		<p>

+ 2 - 0
examples/js/loaders/GLTFLoader.js

@@ -67,6 +67,7 @@ THREE.GLTFLoader = ( function () {
 
 			loader.setPath( this.path );
 			loader.setResponseType( 'arraybuffer' );
+			loader.setRequestHeader( this.requestHeader );
 
 			if ( scope.crossOrigin === 'use-credentials' ) {
 
@@ -218,6 +219,7 @@ THREE.GLTFLoader = ( function () {
 
 			} );
 
+			parser.fileLoader.setRequestHeader( this.requestHeader );
 			parser.parse( onLoad, onError );
 
 		}

+ 2 - 1
examples/jsm/loaders/GLTFLoader.js

@@ -78,7 +78,6 @@ var GLTFLoader = ( function () {
 
 		this.dracoLoader = null;
 		this.ddsLoader = null;
-
 	}
 
 	GLTFLoader.prototype = Object.assign( Object.create( Loader.prototype ), {
@@ -131,6 +130,7 @@ var GLTFLoader = ( function () {
 
 			loader.setPath( this.path );
 			loader.setResponseType( 'arraybuffer' );
+			loader.setRequestHeader( this.requestHeader );
 
 			if ( scope.crossOrigin === 'use-credentials' ) {
 
@@ -282,6 +282,7 @@ var GLTFLoader = ( function () {
 
 			} );
 
+			parser.fileLoader.setRequestHeader( this.requestHeader );
 			parser.parse( onLoad, onError );
 
 		}

+ 0 - 2
src/loaders/FileLoader.d.ts

@@ -8,7 +8,6 @@ export class FileLoader extends Loader {
 	mimeType: undefined | MimeType;
 	responseType: undefined |string;
 	withCredentials: undefined |string;
-	requestHeader: undefined | { [header: string]: string };
 
 	load(
 		url: string,
@@ -19,6 +18,5 @@ export class FileLoader extends Loader {
 	setMimeType( mimeType: MimeType ): FileLoader;
 	setResponseType( responseType: string ): FileLoader;
 	setWithCredentials( value: boolean ): FileLoader;
-	setRequestHeader( value: { [header: string]: string } ): FileLoader;
 
 }

+ 0 - 7
src/loaders/FileLoader.js

@@ -301,13 +301,6 @@ FileLoader.prototype = Object.assign( Object.create( Loader.prototype ), {
 		this.mimeType = value;
 		return this;
 
-	},
-
-	setRequestHeader: function ( value ) {
-
-		this.requestHeader = value;
-		return this;
-
 	}
 
 } );

+ 2 - 0
src/loaders/Loader.d.ts

@@ -11,6 +11,7 @@ export class Loader {
 	path: string;
 	resourcePath: string;
 	manager: LoadingManager;
+	requestHeader: { [header: string]: string };
 
 	/*
 	load(): void;
@@ -22,5 +23,6 @@ export class Loader {
 	setCrossOrigin( crossOrigin: string ): this;
 	setPath( path: string ): this;
 	setResourcePath( resourcePath: string ): this;
+	setRequestHeader( requestHeader: { [header: string]: string } ): this;
 
 }

+ 8 - 0
src/loaders/Loader.js

@@ -11,6 +11,7 @@ function Loader( manager ) {
 	this.crossOrigin = 'anonymous';
 	this.path = '';
 	this.resourcePath = '';
+	this.requestHeader = {};
 
 }
 
@@ -51,6 +52,13 @@ Object.assign( Loader.prototype, {
 		this.resourcePath = resourcePath;
 		return this;
 
+	},
+
+	setRequestHeader: function ( requestHeader ) {
+
+		this.requestHeader = requestHeader;
+		return this;
+
 	}
 
 } );