Prompt miễn phí
Viết hàm xử lý dữ liệu đầu vào không tin cậy
Tạo hàm an toàn để kiểm tra, làm sạch, chuẩn hóa và bắt lỗi dữ liệu từ nguồn ngoài trước khi xử lý.
Prompt dùng để làm gì?
Tạo hàm an toàn để kiểm tra, làm sạch, chuẩn hóa và bắt lỗi dữ liệu từ nguồn ngoài trước khi xử lý.
Điền thông tin của bạn
Prompt
Input mẫu
{
"dinh_dang_du_lieu": "JSON object: {\"order_id\":\" O1 \",\"currency\":\" vnd \",\"amount\":\"12.50\"}",
"muc_tieu_xu_ly": "Chuẩn hóa payload trước xử lý nghiệp vụ",
"truong_bat_buoc": "order_id string<=80, currency 3 ASCII letters, amount số dương hữu hạn",
"quy_tac_chuan_hoa": "trim order_id/currency; currency upper; Decimal amount",
"han_che_bao_mat": "Verify signature và replay theo provider trước mutation; fixture chỉ parse payload"
}
Output mẫu
import json
from decimal import Decimal
def webhook(raw):
data=json.loads(raw)
if not isinstance(data,dict):raise ValueError('object')
order=data.get('order_id');currency=data.get('currency');amount=data.get('amount')
if not isinstance(order,str)or not order.strip()or len(order)>80:raise ValueError('order_id')
if not isinstance(currency,str)or len(currency.strip())!=3 or not currency.strip().isascii()or not currency.strip().isalpha():raise ValueError('currency')
if isinstance(amount,bool)or not isinstance(amount,(str,int,float)):raise ValueError('amount')
try:amount=Decimal(str(amount))
except InvalidOperation:raise ValueError('amount')
if not amount.is_finite()or amount<=0:raise ValueError('amount')
return {'order_id':order.strip(),'currency':currency.strip().upper(),'amount':str(amount)}
# raw: {"order_id":" O1 ","currency":" vnd ","amount":"12.50"}
# result: {"order_id":"O1","currency":"VND","amount":"12.50"}
Cách sử dụng
Giải thích cấu trúc
- Task
- Parse và chuẩn hóa webhook theo schema cụ thể; phân biệt validation payload với xác minh chữ ký và chống replay.
- Verification
- Không bool/NaN; chuẩn hóa order và currency; không lưu trước khi verify nhà cung cấp.
- Limitations
- 3 case Python synthetic đã chạy: hợp lệ, bool amount, NaN. Không thay thế signature/nonce/replay/rate limit/persistence. Mã tiền tệ production cần allowlist ISO được owner xác nhận.
- Model metadata
- Các model tag hiện hữu là môi trường gợi ý, không chứng nhận đã benchmark từng model/version. Kiểm availability và capability trước dùng.
Mẹo sử dụng
- Không bool/NaN; chuẩn hóa order và currency; không lưu trước khi verify nhà cung cấp.
- 3 case Python synthetic đã chạy: hợp lệ, bool amount, NaN. Không thay thế signature/nonce/replay/rate limit/persistence. Mã tiền tệ production cần allowlist ISO được owner xác nhận.
- Dữ liệu ví dụ là synthetic; không đưa token, PII hay dữ liệu khách hàng vào input công khai.
Nguồn và giấy phép
ONTER biên tập · original
Đánh giá prompt
Chọn số sao theo trải nghiệm của bạn. Bạn có thể sửa đánh giá sau một phút.
Prompt liên quan
Thiết kế kiến trúc tách lớp cho ứng dụng nhỏ dễ bảo trì
Đề xuất cách tách controller, service, repository, cấu trúc thư mục và luồng gọi cho một ứng dụng nhỏ.
Phân tích và giảm thiểu rủi ro từ dữ liệu đầu vào
Rà soát mã xử lý input để phát hiện chèn lệnh, path traversal và đề xuất chỉnh sửa an toàn theo bối cảnh thực tế.
Xây dựng bộ test đầy đủ cho tìm kiếm nhị phân
Thiết kế test cho binary search với các biên quan trọng, dữ liệu rỗng, trùng lặp và vị trí đầu cuối.
Soát lỗi logic trong chuỗi if-else phức tạp
Kiểm tra khối điều kiện dài để tìm lỗi logic, làm rõ nhánh biên và đề xuất viết lại dễ hiểu hơn kèm test liên quan.
