从Excel电子表格执行HTTP POST需要哪些VBA代码?
有没有办法从Python脚本使用POST发送文件?
我正在将数据发布到外部API(使用PHP,如果它是相关的).
我应该对我传递的POST变量进行URL编码吗?
或者我只需要对GET数据进行URL编码?
谢谢!
更新:这是我的PHP,如果它是相关的:
$fields = array(
'mediaupload'=>$file_field,
'username'=>urlencode($_POST["username"]),
'password'=>urlencode($_POST["password"]),
'latitude'=>urlencode($_POST["latitude"]),
'longitude'=>urlencode($_POST["longitude"]),
'datetime'=>urlencode($_POST["datetime"]),
'category'=>urlencode($_POST["category"]),
'metacategory'=>urlencode($_POST["metacategory"]),
'caption'=>($_POST["description"])
);
$fields_string = http_build_query($fields);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch,CURLOPT_POST,count($fields));
curl_setopt($ch,CURLOPT_POSTFIELDS,$fields);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$response = curl_exec($ch);
Run Code Online (Sandbox Code Playgroud) 由于Android开发人员建议使用HttpURLConnection该类,我想知道是否有人可以为我提供一个很好的示例,说明如何通过POST将位图"文件"(实际上是内存中的流)发送到Apache HTTP服务器.我对cookie或身份验证或任何复杂的东西不感兴趣,但我只想拥有一个可靠的逻辑实现.我在这里看到的所有例子看起来更像是"让我们试试这个,也许它有效".
现在,我有这个代码:
URL url;
HttpURLConnection urlConnection = null;
try {
url = new URL("http://example.com/server.cgi");
urlConnection = (HttpURLConnection) url.openConnection();
} catch (Exception e) {
this.showDialog(getApplicationContext(), e.getMessage());
}
finally {
if (urlConnection != null)
{
urlConnection.disconnect();
}
}
Run Code Online (Sandbox Code Playgroud)
showDialog应该只显示一个AlertDialog(如果URL无效?).
现在,让我们说我生成一个这样的位图:Bitmap image = this.getBitmap()在一个派生的控件中View,我想通过POST发送它.实现这样的事情的正确程序是什么?我需要使用哪些课程?我可以HttpPost在这个例子中使用吗?如果是这样,我将如何构建InputStreamEntity我的位图?我觉得要首先将位图存储在设备上的文件中是令人反感的.
我还要提一下,我真的需要将原始位图的每个未经改变的像素发送到服务器,因此我无法将其转换为JPEG.
我有一个简单的表单,将文本提交到我的SQL表.问题是,在用户提交文本后,他们可以刷新页面并再次提交数据,而无需再次填写表单.我可以在提交文本后将用户重定向到另一个页面,但我希望用户保持在同一页面上.
我记得读过一些关于为每个用户提供一个唯一的会话ID并将其与另一个值进行比较的方法,这个值解决了我遇到的问题,但我忘记了它的位置.
我正在开发一个小型客户端服务器程序来收集订单.我想以"REST(ful)方式"这样做.
我想做的是:
收集所有订单行(产品和数量)并将完整订单发送到服务器
目前我看到两个选项:
我实际上不想这样做,因为我想限制对服务器的请求数量,所以选项2:
我该如何实施选项2?我的一些想法是:将所有订单行换行到JSON对象中并将其发送到服务器或使用数组发布订单行.
实施选项2是一个好主意还是一个好习惯,如果是,我该怎么办呢.
什么是好习惯?
我有一些旧的代码通过jQuery的post方法发出一个AJAX POST请求,看起来像这样:
$.post("/foo/bar", requestData,
function(responseData)
{
//do stuff with response
}
Run Code Online (Sandbox Code Playgroud)
requestData 只是一个具有一些基本字符串属性的javascript对象.
我正在将我们的东西移动到使用Angular,我想用$ http.post替换这个调用.我想出了以下内容:
$http.post("/foo/bar", requestData).success(
function(responseData) {
//do stuff with response
}
});
Run Code Online (Sandbox Code Playgroud)
当我这样做时,我收到了来自服务器的500错误响应.使用Firebug,我发现这样就发送了请求体:
{"param1":"value1","param2":"value2","param3":"value3"}
Run Code Online (Sandbox Code Playgroud)
成功的jQuery $.post发送身体像这样:
param1=value1¶m2=value2¶m3=value3
Run Code Online (Sandbox Code Playgroud)
我遇到的端点是期望请求参数而不是JSON.所以,我的问题是,无论如何要告诉$http.post发送javascript对象作为请求参数而不是JSON?是的,我知道我可以自己从对象构造字符串,但我想知道Angular是否提供了开箱即用的东西.
我想发送以下JSON文本
{"Email":"aaa@tbbb.com","Password":"123456"}
Run Code Online (Sandbox Code Playgroud)
到Web服务并阅读响应.我知道如何阅读JSON.问题是上述JSON对象必须以变量名发送jason.
我怎么能从android做到这一点?有哪些步骤,例如创建请求对象,设置内容标题等.
如何使用cURL在PHP中执行RAW POST?
没有任何编码的原始帖子,我的数据存储在一个字符串中.数据应格式如下:
... usual HTTP header ...
Content-Length: 1039
Content-Type: text/plain
89c5fdataasdhf kajshfd akjshfksa hfdkjsa falkjshfsa
ajshd fkjsahfd lkjsahflksahfdlkashfhsadkjfsalhfd
ajshdfhsafiahfiuwhflsf this is just data from a string
more data kjahfdhsakjfhsalkjfdhalksfd
Run Code Online (Sandbox Code Playgroud)
一种选择是手动编写正在发送的整个HTTP标头,但这似乎不太理想.
无论如何,我可以只将选项传递给curl_setopt(),说使用POST,使用text/plain,并从一个$variable?发送原始数据?
我已经安装了Firefox RESTclient插件,但是我很难搞清楚如何传递POST参数.有没有特定的格式来做到这一点?或者是否有其他工具可用于在Mac OS X上调试REST API?
post ×10
http ×3
android ×2
http-post ×2
php ×2
rest ×2
angularjs ×1
curl ×1
excel ×1
file-upload ×1
form-submit ×1
forms ×1
html ×1
httprequest ×1
javascript ×1
jquery ×1
json ×1
put ×1
python ×1
url-encoding ×1
urlencode ×1
vba ×1