javascript - 上传失败 token not specified
同样的代码
在www.a.com 下上传正常
在www.b.com 下,相同的代码,通过www.a.com 拿到token 上传报错 error: "token not specified
uptoken_func 下uptoken 返回了空值之后才被 ajax 回调过来的数据赋值,所以上传的时候 token 为空
<code> var qiniu_up = qiniu.uploader({ runtimes : 'html5,flash,html4', browse_button : 'qiniu_browse', get_new_uptoken: true, unique_names: false, save_key : true, domain : '<?php echo QINIU_BUCKET_SITE;?>', container : 'container', max_file_size: '4mb', flash_swf_url : '<?php echo RES_ROOT.'/assets/js/plupload/Moxie.swf';?>', silverlight_xap_url : '<?php echo RES_ROOT.'/assets/js/plupload/Moxie.xap';?>', max_retries: 1, dragdrop: false, drop_element : 'container', chunk_size : '4mb', auto_start: false, /*不开启自动上传*/ multi_selection: false, /*设置为只能选择单个文件*/ filters : { mime_types : [{title : 'Image files', extensions : 'jpg,jpeg,gif,png,bmp'},{title : 'Voice files', extensions : 'mp3,wav'}] }, init : { }, uptoken_func: function(file){ var uptoken = ''; var media_info = '[{"directory": "1","directory_class": "","up_file_name": "'+file.name+'","media_type": "1"}]'; $.ajax({ type : "post", async : false, /*必须使用同步*/ url : '<?php echo WEBSITE_URL.'/qiniu_upload/media_uptoken';?>', data : { app_version : '1.0', app_target : 3, sdk_version : '1.0', plat : 'other', media_info : media_info }, dataType : "jsonp", jsonp: "jsonpCallback", success : function(data){ if(data.code == '1') { var list = data.data.uptoken_list; uptoken = list[0]['uptoken']; media_id = list[0]['media_id']; } else { alert(data.message); } }, error : function(XMLHttpRequest, textStatus, errorThrown){ } }); return uptoken; } }); </code>
回复内容:
同样的代码
在www.a.com 下上传正常
在www.b.com 下,相同的代码,通过www.a.com 拿到token 上传报错 error: "token not specified
uptoken_func 下uptoken 返回了空值之后才被 ajax 回调过来的数据赋值,所以上传的时候 token 为空
<code> var qiniu_up = qiniu.uploader({ runtimes : 'html5,flash,html4', browse_button : 'qiniu_browse', get_new_uptoken: true, unique_names: false, save_key : true, domain : '<?php echo QINIU_BUCKET_SITE;?>', container : 'container', max_file_size: '4mb', flash_swf_url : '<?php echo RES_ROOT.'/assets/js/plupload/Moxie.swf';?>', silverlight_xap_url : '<?php echo RES_ROOT.'/assets/js/plupload/Moxie.xap';?>', max_retries: 1, dragdrop: false, drop_element : 'container', chunk_size : '4mb', auto_start: false, /*不开启自动上传*/ multi_selection: false, /*设置为只能选择单个文件*/ filters : { mime_types : [{title : 'Image files', extensions : 'jpg,jpeg,gif,png,bmp'},{title : 'Voice files', extensions : 'mp3,wav'}] }, init : { }, uptoken_func: function(file){ var uptoken = ''; var media_info = '[{"directory": "1","directory_class": "","up_file_name": "'+file.name+'","media_type": "1"}]'; $.ajax({ type : "post", async : false, /*必须使用同步*/ url : '<?php echo WEBSITE_URL.'/qiniu_upload/media_uptoken';?>', data : { app_version : '1.0', app_target : 3, sdk_version : '1.0', plat : 'other', media_info : media_info }, dataType : "jsonp", jsonp: "jsonpCallback", success : function(data){ if(data.code == '1') { var list = data.data.uptoken_list; uptoken = list[0]['uptoken']; media_id = list[0]['media_id']; } else { alert(data.message); } }, error : function(XMLHttpRequest, textStatus, errorThrown){ } }); return uptoken; } }); </code>
看楼主的代码 好像是往七牛CDN上面上传文件
token的问题 楼主可以看看是不是JS跨域问题 你也可以看看七牛的开发文档 或者 联系七牛的技术人员联调一下
uptoken_func 下的ajax 跨域了以后他的运行顺序变了 所有的程序都执行完了才执行到success 下的uptoken 的被赋值,所以上传上去的uptoken 为空

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

In diesem Kapitel werden wir die Umgebungsvariablen, die allgemeine Konfiguration, die Datenbankkonfiguration und die E-Mail-Konfiguration in CakePHP verstehen.

PHP 8.4 bringt mehrere neue Funktionen, Sicherheitsverbesserungen und Leistungsverbesserungen mit einer beträchtlichen Menge an veralteten und entfernten Funktionen. In dieser Anleitung wird erklärt, wie Sie PHP 8.4 installieren oder auf PHP 8.4 auf Ubuntu, Debian oder deren Derivaten aktualisieren. Obwohl es möglich ist, PHP aus dem Quellcode zu kompilieren, ist die Installation aus einem APT-Repository wie unten erläutert oft schneller und sicherer, da diese Repositorys in Zukunft die neuesten Fehlerbehebungen und Sicherheitsupdates bereitstellen.

Um in cakephp4 mit Datum und Uhrzeit zu arbeiten, verwenden wir die verfügbare FrozenTime-Klasse.

Um am Datei-Upload zu arbeiten, verwenden wir den Formular-Helfer. Hier ist ein Beispiel für den Datei-Upload.

In diesem Kapitel lernen wir die folgenden Themen im Zusammenhang mit dem Routing kennen.

CakePHP ist ein Open-Source-Framework für PHP. Es soll die Entwicklung, Bereitstellung und Wartung von Anwendungen erheblich vereinfachen. CakePHP basiert auf einer MVC-ähnlichen Architektur, die sowohl leistungsstark als auch leicht zu verstehen ist. Modelle, Ansichten und Controller gu

Visual Studio Code, auch bekannt als VS Code, ist ein kostenloser Quellcode-Editor – oder eine integrierte Entwicklungsumgebung (IDE) –, die für alle gängigen Betriebssysteme verfügbar ist. Mit einer großen Sammlung von Erweiterungen für viele Programmiersprachen kann VS Code c

Der Validator kann durch Hinzufügen der folgenden zwei Zeilen im Controller erstellt werden.
