WebUploader 파일 업로드 플러그인에 대한 headers.질문 차단
WebUploader 이벤트 설명
uploadBeforeSend
object
{Object} data
{Object} 기본 업로드 매개 변수입니다. 이 대상을 확장해서 업로드 매개 변수를 제어할 수 있습니다headers
{Object} 이 객체를 확장하여 업로드 헤드를 제어할 수 있습니다어떤 파일의 블록이 발송되기 전에 터치하면, 주로 부수적인 파라미터를 추가할지 묻는 데 사용되며, 큰 파일은 블록을 나누어 업로드하는 전제에서 이 사건을 여러 번 터치할 수 있습니다.
[WebUploader API 문서]
angularjs에 차단기를 추가합니다. 예를 들어 다음과 같습니다.
// token
sxApp.factory('sessionInjector', function ($rootScope,locals) {
// Service logic$rootScope.sysuser.token
var sessionInjector = {
request: function(config) {
config.headers.token = locals.getObject("accessToken");
if(config.method=="POST"){
... ...
}
return config;
}
};
return sessionInjector;
});
여기 headers.token은 WebUploader 플러그인에 작용하지 않습니다. 이 때 WebUploader에서 헤더를 설정하고 웹uploader를 찾아야 합니다.js의 uploadBeforeSend 방법, 업로드 방법doSend에 정의된 헤더에 헤더를 추가합니다.token = GlobalConfig.token;이 코드
/**
* @event uploadBeforeSend
* @param {Object} object
* @param {Object} data , 。
* @param {Object} headers 。
* @description , , 。
* @for Uploader
*/
// 。
_doSend: function( block ) {
var me = this,
owner = me.owner,
opts = me.options,
file = block.file,
tr = new Transport( opts ),
data = $.extend({}, opts.formData ),
headers = $.extend({}, opts.headers ),
requestAccept, ret;
headers.token = GlobalConfig.token;
block.transport = tr;
tr.on( 'destroy', function() {
delete block.transport;
me._popBlock( block );
Base.nextTick( me.__tick );
});
주의:angularjs와 jQuery 사이의 값 전달이 비교적 번거롭기 때문에, 여기에 전역 변수 GlobalConfig를 설명합니다.token, angularjs와 jQuery 사이에서 값을 전달합니다.
config.js에 글로벌 변수가 표시됩니다.
function GlobalConfig(){
}
GlobalConfig.token="";
(function(){
})();
앱에서.js에서 전송된 값:
GlobalConfig.token = locals.getObject("accessToken");
전재 대상:https://www.cnblogs.com/miny-simp/p/9087348.html
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.