lua - lua中的多部分帖子
问题描述
我正在尝试在 lua 中为以下内容创建一个多部分的帖子
POST /CMServiceAPI/Record HTTP/1.1
Host: xx.xx.xx.xx
Accept: application/json
Content-Type: multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW
Authorization: Basic ddddzxwsdlj3247982323lkjklsdsdlkjsdj==
cache-control: no-cache
Postman-Token: f4442f26-fe43-4ba6-afcc-046ddccbb1bd
Content-Disposition: form-data; name="RecordType"
Document
Content-Disposition: form-data; name="RecordTitle"
Vinay test 2341
Content-Disposition: form-data; name="properties"
RecordNumber
------WebKitFormBoundary7MA4YWxkTrZu0gW--
我将如何在 lua 中创建它?
解决方案
我需要安装luasocket
,希望这对你有用:
local http = require('socket.http')
local ltn12 = require('socket.ltn12')
local body = {}
local boundary = '----WebKitFormBoundary7MA4YWxkTrZu0gW'
local payload = string.format([[
Content-Disposition: form-data; name="RecordType"
%s
Content-Disposition: form-data; name="RecordTitle"
%s
Content-Disposition: form-data; name="properties"
%s
%s
]], 'Document', 'Vinay test 2341', 'RecordNumber', boundary)
local res, code, headers = http.request({
url = 'http://youservernamehere/CMServiceAPI/Record',
method = 'POST',
headers = {
['Content-Type'] = 'multipart/form-data; boundary='..boundary,
['Postman-Token'] = 'f4442f26-fe43-4ba6-afcc-046ddccbb1bd',
Authorization = 'Basic ddddzxwsdlj3247982323lkjklsdsdlkjsdj==',
Accept = 'application/json'
},
source = ltn12.source.string(payload),
sink = ltn12.sink.table(body)
})
print(res)
print(code)
if type(headers) == 'table' then
for k, v in pairs(headers) do
print(k, v)
end
end
print('Response body:')
if type(body) == 'table' then
print(table.concat(body))
else
print('Not a table:', type(body))
end
这段代码未经测试,但我希望你明白:)
推荐阅读
- asp.net - 无法加载 Microsoft.Bcl.AsyncInterfaces
- python - QListWidget 复选框与项目选择同步
- python - 无法导入 Scapy arping() 方法
- c# - 错误 403:Xamarin 表单中的 disallowed_useragent
- excel - 如何在 VBA 上显示单元格中使用的实际公式?
- groovy - 使用 GroovyShell.evaluate 时跳过 MissingPropertyException
- node.js - Netlify / React 前端未连接到 Node.js / Express / MongoDB Atlas / Heroku 后端,但在开发/本地工作
- reactjs - 使样式适应现有网页的 Ionic
- sql - 如何改进数据库设计和ER图?我应该如何处理“布尔”字段?
- c# - 如何使用 linq 从父类和嵌套数组子类中获取值?