Hantar JSON menggunakan fail imej dalam Posman
PHP Editor Xigua akan memperkenalkan anda cara menggunakan fail imej untuk menghantar JSON dalam Posman. Posman ialah alat pembangunan API yang berkuasa yang boleh membantu pembangun melakukan ujian antara muka dan penyahpepijatan. Biasanya, kami menggunakan Posman untuk menghantar data JSON, tetapi bagaimana jika kami perlu memasukkan fail imej dalam JSON? Artikel ini akan memperkenalkan secara terperinci cara melaksanakan fungsi ini dalam Posman melalui beberapa langkah mudah, membolehkan anda menggunakan Posman untuk ujian antara muka dengan lebih fleksibel. Sama ada anda seorang pemula atau pembangun berpengalaman, anda akan mendapat petua dan pengetahuan praktikal daripada artikel ini. Mari kita ketahui bersama!
Kandungan soalan
Saya ingin menghantar fail json dengan imej dalam posmen tetapi saya mendapat ralat berikut:
"status": 415, "error": "unsupported media type",
Pengawal Pakar
package com.shayanr.homeservicespring.controller; import com.shayanr.homeservicespring.entity.users.expert; import com.shayanr.homeservicespring.service.expertservice; import lombok.requiredargsconstructor; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.multipartfile; import java.io.file; import java.io.ioexception; @restcontroller @requestmapping("/expert") @requiredargsconstructor public class expertcontroller { private expertservice expertservice; @postmapping("/register") public void register(@requestbody expert expert, @requestparam("image") multipartfile image) throws ioexception { expertservice.signup(expert, image); } }
Perkhidmatan Pakar
@override @transactional public expert signup(expert expert, multipartfile image) throws ioexception { if (expert == null) { throw new nullpointerexception("null expert"); } if (!validate.namevalidation(expert.getfirstname()) || !validate.namevalidation(expert.getlastname()) || !validate.emailvalidation(expert.getemail()) || !validate.passwordvalidation(expert.getpassword())) { throw new persistenceexception("wrong validation"); } string extension = filenameutils.getextension(image.getname()); if (extension.equalsignorecase("video") || extension.equalsignorecase("mp4")) { throw new persistenceexception("invalid image format. only image files are allowed."); } expert.setconfirmation(confirmation.new); byte[] imageinbytes = image.getbytes(); expert.setimage(imageinbytes); expertrepository.save(expert); return expert; }
Di posmen baris pertama saya ialah json dan fail json ini
{ "firstName": "Sasa", "lastName": "Weel", "email": "[email protected]", "password": "Sasasd1@", "signUpDate": "2024-01-31", "signUpTime": "10:00:00" }
Dalam baris kedua saya menetapkan imej di mana masalahnya
Penyelesaian
Parameter @requestparam("image") multipartfile image
anda kelihatan betul.
Jadi perkara seterusnya yang perlu anda lakukan ialah pastikan anda memberitahu spring bahawa anda ingin membenarkan fail berbilang bahagian.
Ini adalah contoh application.properties
Konfigurasi:
spring.servlet.multipart.enabled=true
Tetapan konfigurasi tambahan untuk mengawal saiz muat naik:
# Adjust these file size restrictions and location as nessessary spring.servlet.multipart.max-file-size=2MB spring.servlet.multipart.max-request-size=10MB spring.servlet.multipart.location=/temp
Saya mengesyaki parameter @requestbody expert expert
sepatutnya ada kaitan dengan ini.
Atas ialah kandungan terperinci Hantar JSON menggunakan fail imej dalam Posman. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

