Nhảy đến nội dung

postFormsData

Tạo một đối tượng dữ liệu biểu mẫu để lưu thông tin.

Mô tả

Phương thức này trả về một đối tượng FormDataEntity đã được tạo. Nếu bạn muốn thay đổi ngôn ngữ, chỉ cần truyền nó với tham số thứ hai.

Các phương thức với yêu cầu post chấp nhận một đối tượng với trường dữ liệu biểu mẫu làm thân yêu cầu, tương ứng với loại thông tin được gửi. Dưới đây là các ví dụ về các đối tượng dữ liệu biểu mẫu cho các loại dữ liệu khác nhau.

FormData.postFormsData(

body*, body.formIdentifier*, body.formModuleConfigId*, body.moduleEntityIdentifier*, body.replayTo*, body.status*, body.formData*, body.fileQuery, langCode

);

Sơ đồ tham số

Sơ đồ (body)

body(bắt buộc): IBodyPostFormData
Thân yêu cầu
ví dụ:

{
"formIdentifier": "test-form",
"formModuleConfigId": 2,
"moduleEntityIdentifier": "blog",
"replayTo": null,
"status": "sent",
"formData": [
{
"marker": "name",
"type": "string",
"value": "Test"
}
]
}

body.formIdentifier(bắt buộc): string
Định danh văn bản (dấu hiệu) của biểu mẫu.
ví dụ: "form"

body.formModuleConfigId(bắt buộc): number
Định danh duy nhất của cấu hình mô-đun biểu mẫu.
ví dụ: 2

body.moduleEntityIdentifier(bắt buộc): string
Định danh văn bản (dấu hiệu) của thực thể mô-đun.
ví dụ: "blog"

body.replayTo(bắt buộc): string | null
Email để trả lời.
ví dụ: "some@email.com"

body.status(bắt buộc): string
Trạng thái của biểu mẫu.
ví dụ: "sent"

body.formData(bắt buộc): FormDataType[]
Mảng các đối tượng dữ liệu biểu mẫu.
ví dụ:

[
{
"marker": "name",
"type": "string",
"value": "Jack"
}
]

body.fileQuery: IUploadingQuery
Truy vấn tệp tùy chọn để tải lên tệp.
ví dụ:

{
"type": "page",
"entity": "editor",
"id": 3787
}

langCode: string
Mã ngôn ngữ. Mặc định: "en_US"
ví dụ: "en_US"

Ví dụ

Ví dụ tối thiểu


const body = {
"formIdentifier": "contact_us",
"formModuleConfigId": 2,
"moduleEntityIdentifier": "blog",
"replayTo": null,
"status": "sent",
"formData": [
{
"marker": "last_name",
"type": "string"
"value": "Andrey"
}
]
};

const response = await FormData.postFormsData(body);

Ví dụ với thuộc tính kiểu đơn giản "string", "number", "float"


const body = {
"formIdentifier": "test-form",
"formModuleConfigId": 2,
"moduleEntityIdentifier": "blog",
"replayTo": null,
"status": "sent",
"formData": [
{
"marker": "string_marker",
"type": "string",
"value": "Username"
},
{
"marker": "number_marker",
"type": "number",
"value": 1
},
{
"marker": "float_marker",
"type": "float",
"value": 2.256
}
]
};

const response = await FormData.postFormsData(body);


Ví dụ với thuộc tính kiểu đơn giản "date", "dateTime", "time"


const body = {
"formIdentifier": "contact_us",
"formModuleConfigId": 2,
"moduleEntityIdentifier": "blog",
"replayTo": null,
"status": "sent",
"formData": [
{
"marker": "date_marker",
"type": "date",
"value": {
"fullDate": "2024-05-07T21:02:00.000Z",
"formattedValue": "08-05-2024 00:02",
"formatString": "DD-MM-YYYY HH:mm"
}
}
]
};

const response = await FormData.postFormsData(body);


Ví dụ với thuộc tính kiểu đơn giản "text" (Chỉ một trong htmlValue, plainValue hoặc mdValue có thể được cung cấp)


const body = {
"formIdentifier": "contact_us",
"formModuleConfigId": 2,
"moduleEntityIdentifier": "blog",
"replayTo": null,
"status": "sent",
"formData": [
{
"marker": "about_marker",
"type": "text",
"value": [
{
"htmlValue": "<p>Hello world</p>",
"params": {
"isImageCompressed": true,
"editorMode": "html"
}
}
]
}
]
};

const response = await FormData.postFormsData(body);


Ví dụ với thuộc tính kiểu đơn giản "textWithHeader" (Chỉ một trong htmlValue, plainValue hoặc mdValue có thể được cung cấp)


const body = {
"formIdentifier": "contact_us",
"formModuleConfigId": 2,
"moduleEntityIdentifier": "blog",
"replayTo": null,
"status": "sent",
"formData": [
{
marker: "textwithheader_marker",
type: "textWithHeader",
value: [
{
"header": "Tiêu đề",
"htmlValue": "<p>Hello World</p>",
"params": {
"isImageCompressed": true,
"editorMode": "html"
}
}
]
}
]
};

const response = await FormData.postFormsData(body);


Ví dụ với thuộc tính kiểu "image"


const testImageUrl = 'https://your-project.oneentry.cloud/cloud-static/files/project/product/2954/image/7e0a6a70-a23d-410f-8b6a-f8b4f7483244.png';
const filename = 'test-image.png';

/* Trong kịch bản thực tế, bạn nên sử dụng API File để tạo tệp từ URL nhưng do đơn giản, chúng tôi sẽ sử dụng URL tệp đã định nghĩa trước sử dụng phương thức createFileFromUrl cho dụ này */
const file = await FileUploading.createFileFromUrl(testImageUrl, filename);

const body = {
"formIdentifier": "contact_us",
"formModuleConfigId": 2,
"moduleEntityIdentifier": "blog",
"replayTo": null,
"status": "sent",
"formData": [
{
marker: "image_marker",
type: "image",
value: [
file
]
}
]
};

const response = await FormData.postFormsData(body);


Ví dụ với thuộc tính kiểu "groupOfImages"


const testImageUrl = 'https://your-project.oneentry.cloud/cloud-static/files/project/product/2954/image/7e0a6a70-a23d-410f-8b6a-f8b4f7483244.png';
const filename = 'test-image.png';

/* Trong kịch bản thực tế, bạn nên sử dụng API File để tạo tệp từ URL nhưng do đơn giản, chúng tôi sẽ sử dụng URL tệp đã định nghĩa trước sử dụng phương thức createFileFromUrl cho dụ này */
const file = await FileUploading.createFileFromUrl(testImageUrl, filename);

const body = {
"formIdentifier": "contact_us",
"formModuleConfigId": 2,
"moduleEntityIdentifier": "blog",
"replayTo": null,
"status": "sent",
"formData": [
{
marker: "groupofimages_marker",
type: "groupOfImages",
value: [
file
]
}
]
};

const response = await FormData.postFormsData(body);


Ví dụ với thuộc tính kiểu "files"


const testImageUrl = 'https://your-project.oneentry.cloud/cloud-static/files/project/product/2954/image/7e0a6a70-a23d-410f-8b6a-f8b4f7483244.png';
const filename = 'test-image.png';

/* Trong kịch bản thực tế, bạn nên sử dụng API File để tạo tệp từ URL nhưng do đơn giản, chúng tôi sẽ sử dụng URL tệp đã định nghĩa trước sử dụng phương thức createFileFromUrl cho dụ này */
const file = await FileUploading.createFileFromUrl(testImageUrl, filename);

const body = {
"formIdentifier": "contact_us",
"formModuleConfigId": 2,
"moduleEntityIdentifier": "blog",
"replayTo": null,
"status": "sent",
"formData": [
{
"marker": "picture_marker",
"type": "file",
"value": [
{
"filename": "files/project/page/10/image/Screenshot-from-2024-05-02-15-23-14.png",
"downloadLink": "http://my-site.com/cloud-static/files/project/page/10/image/Screenshot-from-2024-05-02-15-23-14.png",
"size": 392585
}
]
}
]
};

const response = await FormData.postFormsData(body);


Ví dụ với thuộc tính kiểu "radioButton" hoặc "list"


const body = {
"formIdentifier": "contact_us",
"formModuleConfigId": 2,
"moduleEntityIdentifier": "blog",
"replayTo": null,
"status": "sent",
"formData": [
{
"marker": "selector_marker",
"type": "list",
"value": [
{
"marker": "list",
"type": "list",
"value": ["1"]
}
]
}
]
};

const response = await FormData.postFormsData(body);


Ví dụ với thuộc tính kiểu "entity" (danh sách lồng nhau)


const body = {
"formIdentifier": "contact_us",
"formModuleConfigId": 2,
"moduleEntityIdentifier": "blog",
"replayTo": null,
"status": "sent",
"formData": [
{
"marker": "entity_marker",
"type": "entity",
"value": [25, 32, 24]
}
]
};

const response = await FormData.postFormsData(body);

Giá trị - các định danh số cho các trang và các định danh chuỗi cho các sản phẩm. Các định danh cho sản phẩm nên bao gồm tiền tố 'p-', ví dụ, 'p-1-', 'p-2-', v.v. p-[parentId]-[productId]


Ví dụ với thuộc tính kiểu "timeInterval"


const body = {
"formIdentifier": "contact_us",
"formModuleConfigId": 2,
"moduleEntityIdentifier": "blog",
"replayTo": null,
"status": "sent",
"formData": [
{
marker: 'timeinterval_marker',
type: 'timeInterval',
value: [
[
"2025-02-11T16:00:00.000Z",
"2025-02-13T16:00:00.000Z"
]
]
},
]
};

const response = await FormData.postFormsData(body);

giá trị — mảng các mảng khoảng thời gian theo định dạng ISO 8601. ví dụ 2025-02-11T16:00:00:000Z

2025 — năm; 02 — tháng; 11 — ngày trong tháng; T — dấu phân cách giữa ngày và giờ; 16:00:00 — thời gian theo định dạng giờ:phút:giây; 000Z — mili giây và chỉ dẫn múi giờ. Z có nghĩa là thời gian được chỉ định theo định dạng UTC.


Ví dụ trả về:

{
"formData": {
"formIdentifier": "test-form",
"time": "2025-11-06T09:28:00.915Z",
"formData": [
{
"marker": "name",
"type": "string",
"value": "Test"
}
],
"entityIdentifier": "blog",
"fingerprint": "UQ_ue7gas",
"isUserAdmin": false,
"formModuleId": 2,
"userIdentifier": null,
"parentId": null,
"id": 843
},
"actionMessage": ""
}

Sơ đồ phản hồi

Sơ đồ: IPostFormResponse

formData: object
Dữ liệu biểu mẫu.
ví dụ:

{
"id": 42,
"formIdentifier": "contact_form",
"time": "2023-10-01T12:00:00Z",
"entityIdentifier": "blog",
"isUserAdmin": false,
"formModuleId": 2,
"parentId": null,
"userIdentifier": null,
"formData": [
{
"marker": "name",
"type": "string",
"value": "Jack"
}
]
}

formData.id: number
Định danh duy nhất của trang biểu mẫu.
ví dụ: 12345

formData.formIdentifier: string
Định danh của biểu mẫu.
ví dụ: "contact_form"

formData.time: string
Thời gian gửi biểu mẫu.
ví dụ: "2023-10-01T12:00:00Z"

formData.entityIdentifier: string
Định danh thực thể.
ví dụ: "blog"

formData.isUserAdmin: boolean
Người dùng có phải là quản trị viên không.
ví dụ: false

formData.formModuleId: number
Định danh mô-đun biểu mẫu.
ví dụ: 2

formData.parentId: any
Định danh cha.
ví dụ: null

formData.userIdentifier: any
Định danh người dùng.
ví dụ: null

formData.formData: FormDataType[]
Dữ liệu các trường biểu mẫu.
ví dụ:

[
{
"marker": "name",
"type": "string",
"value": "Jack"
}
]

actionMessage: string
Thông điệp hành động cho dữ liệu biểu mẫu.
ví dụ: "Biểu mẫu đã được gửi thành công"