multipartform-data 相关问题

multipart / form-data是用于将表单发送到Web服务的内容类型,包括文件上载。

React Native 向 Nodejs multer 发送空的 req.body 和未定义的 req.file

我使用react-native和nodejs(multer)。在nodejs中,我收到req.body-{}、req.file-undefined和req.files-undefined 我检查了 stackoverflow 中的所有内容,但没有任何效果。这是我的代码。 客户...

回答 3 投票 0

如何在NextJS中读取FormData

我想阅读 fetch 的正文。这是我发送的内容: fetch('/api/foo', { 方法:'POST', 正文:新的 FormData(formRef.current), }); 现在我只需要解析正文。但我不知道怎么办。我...

回答 2 投票 0

Nuxt 3 获取多部分表单数据上传不起作用

无论出于何种原因,我无法将图像上传到我的服务器。但当使用 RapidAPI 和完全相同的图像执行此操作时,它会起作用。我在这里做错了什么? 鹅毛笔编辑器代码: 无论出于何种原因,我无法将图像上传到我的服务器。但当使用 RapidAPI 和完全相同的图像执行此操作时,它会起作用。我在这里做错了什么? QuillEditor代码: <template> <QuillEditor :modules="modules" :toolbar="toolbar" theme="snow" toolbar="full" /> </template> <script> import { QuillEditor } from '@vueup/vue-quill' import '@vueup/vue-quill/dist/vue-quill.snow.css'; import ImageUploader from "quill-image-uploader"; const runtimeConfig = useRuntimeConfig(); const { fetch } = useSmartFetch(); export default { setup: () => { const toolbar = [ ['image', 'link'], ['emoji'] ]; const modules = { name: "imageUploader", module: ImageUploader, options: { upload: (file) => { return new Promise(async (resolve, reject) => { const formData = new FormData() formData.append('image', file); console.log(file) console.log(formData) const authStore = useAuthStore() const response = await $fetch(runtimeConfig.public.api.image.upload, { method: 'POST', body: formData, headers: { 'Authorization': 'Bearer ' + authStore.accessToken, 'Content-Type': 'multipart/form-data' } }) }); }, }, }; return { toolbar, modules }; }, components: { QuillEditor, }, }; </script> 当我检查我的请求时,我已将不记名令牌设置为进行身份验证(否则我会得到 401 而不是 422)以及 Content-Type: multipart/form-data。甚至我的有效负载也包含表单数据。这是我的有效负载的开始: -----------------------------118964521239883964394155378140 Content-Disposition: form-data; name="image"; filename="1705385217523.jpg" Content-Type: image/jpeg ... ... ... 但是,在 Laravel Telescope 中我的有效负载是空的: 使用 RapidAPI 执行完全相同的操作时: 一切正常,没有任何问题。此外,还设置了有效负载: 怎么会这样?我很确定我的后端可以工作,并且已经过测试。但我也确信我正确地执行了请求。 有人可以帮助我吗? 亲切的问候 更新(添加了开发控制台的图像): 204 选项请求: 422 帖子请求: 使用 FormData 时,不应显式设置 Content-Type 标头。这将阻止您的浏览器使用用于分隔表单字段的边界表达式设置 Content-Type 标头。 更多信息可以在MDN上找到。 因此,更改您的 fetch 请求: const response = await $fetch(runtimeConfig.public.api.image.upload, { method: 'POST', body: formData, headers: { 'Authorization': 'Bearer ' + authStore.accessToken, } })

回答 1 投票 0

Server Spring boot无法解析多部分请求

遇到错误内容类型 零件正面有一张表格,并附有一个文件 我必须接受前面的请求并处理它。但是当前端发送请求时...

回答 1 投票 0

WSO2 多部分二进制传递和 MultipartFormData

我们目前使用 WSO EI 6.4 作为 ESB。 我们进行了配置,以在 axis2.xml 中为一个 Carbon 应用程序获取“二进制传递”行为 我们目前使用 WSO EI 6.4 作为 ESB。 我们进行了配置,以在 axis2.xml 中为一个 Carbon 应用程序获取“二进制传递”行为 <messageBuilder contentType="multipart/form-data" class="org.wso2.carbon.relay.BinaryRelayBuilder"/> <messageFormatter contentType="multipart/form-data" class="org.wso2.carbon.relay.ExpandingMessageFormatter"/> 但是现在,我们需要开发一个新的碳应用程序,它需要创建多部分消息。 因此我们需要将配置更改为,如本文中所述 <messageBuilder contentType="multipart/form-data" class="org.apache.axis2.builder.MultipartFormDataBuilder" /> <messageFormatter contentType="multipart/form-data" class="org.apache.axis2.transport.http.MultipartFormDataFormatter"/> 但是如果我们这样做,我们将失去“二进制直通”并破坏第一个碳应用程序。 是否有可能仅针对一个 Carbon 应用程序覆盖 messageBuilder 和 messageFormatter? 谢谢你 解决方案 在@tmoasz 的帮助下我能够解决这个问题。 完整解决方案在这里 <inSequence> <!--Extract value from Json--> <property name="Data1" expression="json-eval($.Data1)"/> <property name="Data2" expression="json-eval($.Data2)"/> <property name="File1" expression="json-eval($.File1)"/> <!-- remove body and set MessageBuilder if body not removed, MultipartFormDataFormatter is not call --> <script language="js"> mc.getEnvelope().getBody().getFirstElement().detach(); </script> <builder> <messageBuilder contentType="multipart/form-data" class="org.apache.axis2.builder.MultipartFormDataBuilder" formatterClass="org.apache.axis2.transport.http.MultipartFormDataFormatter"/> </builder> <payloadFactory media-type="xml"> <format> <root xmlns=""> <metadata xmlns="http://org.apache.axis2/xsd/form-data" filename="key1" name="key1">$1</metadata> <!-- content is decode from base64--> <file xmlns="http://org.apache.axis2/xsd/form-data" filename="file1.1" name="file1.1" content-type="application/xml">$3</file> <!-- content is not changed--> <metadata xmlns="http://org.apache.axis2/xsd/form-data" name="file1.2" filename="file1.2" content-type="application/xml">$3</metadata> </root> </format> <args> <arg expression="get-property('Data1')"/> <arg expression="get-property('Data2')"/> <arg expression="get-property('File1')"/> </args> </payloadFactory> <!--set messageType to trigger multiPart Formater --> <property name="messageType" scope="axis2" type="STRING" value="multipart/form-data"/> <!--remove ContentType to force generate header content-type with boundary information --> <property name="ContentType" scope="axis2" action="remove"/> <send> <endpoint> <http method="post" uri-template="http://127.0.0.1:3000/mulitPart/wso2"> <suspendOnFailure> <initialDuration>-1</initialDuration> <progressionFactor>-1</progressionFactor> <maximumDuration>0</maximumDuration> </suspendOnFailure> <markForSuspension> <retriesBeforeSuspension>0</retriesBeforeSuspension> </markForSuspension> </http> </endpoint> </send> </inSequence> 卷曲测试 curl --location --request POST 'http://127.0.0.1:8280/outgoing-mail' \ --header 'Content-Type: application/json' \ --data-raw '{ "Data1": "Value1", "Data2": "Value2", "File1" : "PHhtbD4gICAKICAgIDxoZWxsbz5TdGFjazwvaGVsbG8+CjwveG1sPg==" }' 生成多部分 --MIMEBoundary_dfa6d9a4ea9eee573969c1fae03dd6667159a66375689ec7 Content-Disposition: form-data; name="key1"; filename="key1" Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: binary Value1 --MIMEBoundary_dfa6d9a4ea9eee573969c1fae03dd6667159a66375689ec7 Content-Disposition: form-data; name="file1.1"; filename="file1.1" Content-Type: application/pdf; charset=ISO-8859-1 Content-Transfer-Encoding: binary <xml> <hello>Stack</hello> </xml> --MIMEBoundary_dfa6d9a4ea9eee573969c1fae03dd6667159a66375689ec7 Content-Disposition: form-data; name="file1.2"; filename="file1.2" Content-Type: application/pdf; charset=ISO-8859-1 Content-Transfer-Encoding: binary PHhtbD4gICAKICAgIDxoZWxsbz5TdGFjazwvaGVsbG8+CjwveG1sPg== --MIMEBoundary_dfa6d9a4ea9eee573969c1fae03dd6667159a66375689ec7-- 也许BuilderMediator可以做到你想要实现的目标。 查看此:Builder+Mediator 文档。

回答 1 投票 0

如何将图像、Pdf 和少量参数从 Angular 一起发送到 Node.Js 服务器

我正在使用 Angular Material 来获取可拖动图像的位置,从用户获取输入类型文件(pdf)以及存储在 ./assets/emojis/ 中的图像。我可以使用...将 Pdf 从 Angular 发送到 Node

回答 2 投票 0

我如何在 Laravel 中管理多部分/表单数据?

我有一个 $request 变量,其中有一个 $request->titulo (帖子的标题)和多个图像作为 $request->contenido。 我正在保存帖子中的数据,但似乎该功能

回答 1 投票 0

如何使用Java和Spark模拟多部分/表单数据?

我正在使用 multipart/form-data 接收一个文件,如下所示(使用 Spark,而不是 SpringBoot): @覆盖 公共对象句柄(请求请求,响应响应)抛出异常{

回答 1 投票 0

为什么表单数据不附加值?

我构建了简单的formData。这是我的代码: const handleFormSubmit = (data: T & { [key: string]: FileList }) => { const formData = new FormData(); // 控制台.log(数据) 哦...

回答 1 投票 0

如何使用 Postman 上的表单数据在预请求脚本中添加文件

我正在尝试在表单数据中使用预请求脚本中创建一个请求,并且在正文中我想从我的工作目录上传一个pdf文件。 我使用了以下脚本和文件...

回答 2 投票 0

react/redux中的formData在expressjs中返回未定义的req.params.id

我有一个多部分表单,我正在使用 formData 通过“PUT”请求发送数据。我收到错误 Cast to objectId failed for value 'undefined' (type string) at path '_id' for model 'Bl...

回答 1 投票 0

如何创建可以接受 Form 或 JSON 正文的 FastAPI 端点?

我想在 FastAPI 中创建一个端点,它可以接收(多部分)表单数据或 JSON 正文。有没有办法让这样的端点接受其中之一,或者检测接收到的数据类型......

回答 1 投票 0

为什么 FormData 对象没有通过 fetch() 发送?

const userAPI =“https://reqres.in/api/users” $("#myForm").on("提交", function(e) { e.preventDefault(); const formData = new FormData(this); // console.log(formData.get("inp_usern...

回答 1 投票 0

如何在 Laravel PHP 7.4 中将图像文件上传到我的数据库

路线未定义但已正确定义的路线会出现错误。我正在分享我的完整代码。 我的表迁移代码如下; 虽然已正确定义路由,但未定义路由时会出现错误。我正在分享我的完整代码。 我的表迁移代码如下; <?php use Illuminate\Support\Facades\Schema; use Illuminate\Database\Schema\Blueprint; use Illuminate\Database\Migrations\Migration; class CreateBackgroundImagesTable extends Migration { /** * Run the migrations. * * @return void */ public function up() { Schema::create('background_images', function (Blueprint $table) { $table->bigIncrements('id'); $table->timestamps(); }); } /** * Reverse the migrations. * * @return void */ public function down() { Schema::dropIfExists('background_images'); } } 背景图片模型代码如下: <?php namespace App\Models; use Illuminate\Database\Eloquent\Factories\HasFactory; use Illuminate\Database\Eloquent\Model; class BackgroundImage extends Model { use HasFactory; protected $fillable = [ 'user_id', 'club_id', 'user_type_id', 'image_name', 'default' ]; } 我的上传和设置图像的控制器代码如下: public function uploadBackgroundImage(Request $request) { dd($request->all()); $request->validate([ 'image' => 'required|image|mimes:jpg,jpeg|max:2048', ]); $user = Auth::user(); $imageName = time() . '.' . $request->image->extension(); $request->image->move(public_path('background_images'), $imageName); // Save image details to database $backgroundImage = new BackgroundImage(); $backgroundImage->user_id = $user->id; $backgroundImage->club_id = $user->club_id; $backgroundImage->user_type_id = $user->user_type_id; $backgroundImage->image_name = $imageName; $backgroundImage->save(); return back()->with('success', 'You have successfully uploaded an image.'); } public function setDefaultBackgroundImage(Request $request) { $user = Auth::user(); // Reset current default BackgroundImage::where('user_id', $user->id) ->where('club_id', $user->club_id) ->where('user_type_id', $user->user_type_id) ->update(['default' => null]); // Set new default BackgroundImage::where('id', $request->image_id)->update(['default' => 'selected']); return back()->with('success', 'Background image updated successfully.'); } govt_menu 查看上传图片的代码: <div class="d-flex arabic-font-dir ml-5 pl-5 mt-5 mob-view-background-selection"> <p class="pr-3 mb-0">Select background of your choice:</p> <select class="dropdown pr-3" id="background_select"> <option value="{{ asset('logos/loginOtpBackgroundImg.jpg') }}" selected>Select background</option> <option value="{{ asset('logos/menuBackGround.jpg') }}">Img 1</option> <option value="{{ asset('logos/menuBackGround1.jpg') }}">Img 2</option> <option value="{{ asset('logos/menuBackGround2.jpg') }}">Img 3</option> <option value="{{ asset('logos/menuBackGround3.jpg') }}">Img 4</option> <option value="{{ asset('logos/menuBackGround4.jpg') }}">Img 5</option> <option value="{{ asset('logos/menuBackGround5.jpg') }}">Img 6</option> </select> @include('govt_menu.upload_background') </div> govt_menu.upload_background 的文件代码 <form id="uploadForm" enctype="multipart/form-data"> @csrf <label class="uploadBackground pl-3 mb-0" for="image_upload">Upload background <em style="text-transform: lowercase"><small>(.jpg format)</small></em>:</label> <input class="uploadBackground pl-3" id="image_upload" name="image" type="file" accept="image/jpg" /> <button type="submit" onclick="uploadImage()">Upload</button> </form> <script> $(document).ready(function() { $('#uploadForm').on('submit', function(e) { e.preventDefault(); var formData = new FormData(this); console.log("formData", formData); $.ajax({ url: '{{ route("upload_background") }}', method: 'POST', data: formData, processData: false, contentType: false, success: function(response) { console.log(response); }, error: function(xhr, status, error) { console.error(xhr.responseText); } }); }); }); </script> 我的路线代码如下: #Menu Dashboard - Background Image Setting Route::post('/set-default-background-image', '\App\Http\Controllers\League\HomeController@setDefaultBackgroundImage')->name('setDefaultBackgroundImage'); Route::middleware(['auth'])->group(function () { Route::post('/govt_menu/upload-background-image', '\App\Http\Controllers\League\HomeController@uploadBackgroundImage')->name('upload_background'); }); 附上错误截图。我尝试了多种方法,但没有一种有效。接下来我可以尝试什么? 您可以分享您的路线文件(web.php)吗

回答 1 投票 0

每个请求上传多张图片时出现问题

我有以下控制器的操作: [HttpPost("api/v1/addProduct")] [消耗(“多部分/表单数据”)] 公共任务 AddProduct([FromForm]

回答 1 投票 0

FileSystemInteractionException:使用documents4j时无法访问目标文件

我正在使用documents4j将word文档转换为pdf,有时我遇到了以下异常 2016-03-28 09:29:16.982 信息 3660 --- [pool-1-thread-2] c.d.c.msoffice.MicrosoftWordBridge :

回答 3 投票 0

如何将多部分/表单数据从 Angular 发布到 Nodejs Multer?

从 Angular 我想将图像作为 Blob 数据上传到 nodeJS 服务器。服务器在后端使用multer。图像文件是通过canvas渲染生成的。我从 s...

回答 3 投票 0

使用 Nginx Lua 操作 POST 请求表单数据

我正在使用最新版本的 OpenResty 使用 Nginx Lua 对 POST 请求数据执行一些操作。我的测试 Lua 脚本,通过 rewrite_by_lua_file 调用进行调用很简单 ngx.req.rea...

回答 1 投票 0

使用 RTK 查询和 React Native Expo 将带有 FormData 的文件发送到 Nodejs 服务器

我想将文件发送到使用 expo-document-picker 或 expo-image-picker 选择的服务器。选择器的结果对象存储在providerDetails.id中,如下所示: {“资产”:[{“米姆...

回答 1 投票 0

flutter 多部分文件上传服务器端错误:无法处理部分,因为未提供多部分配置

颤动: var request = new http.MultipartRequest("POST", url); request.fields['name'] = '约翰'; request.files.add(http.MultipartFile.fromPath( '文件1', '/path/to/file1.jpg', )); 变种

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.