我有一个卷曲请求,如下所示,它应该发送一个PUT请求到我的网络服务器上的PHP文件.当我收到此请求时,我想列出使用此PUT请求收到的所有POST数据,但没有收到POST数据.请问你能告诉我哪里出错了?
$ch = curl_init();
$fields = array(
'username' => 'username'
);
curl_setopt($ch, CURLOPT_URL, "http://localhost/linetime/user/1");
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'PUT');
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $fields);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$result = curl_exec($ch);
var_dump($result);
Run Code Online (Sandbox Code Playgroud) 我正在考虑将S3用于后端持久存储.
但是,根据架构选择,我预测一些存储桶可能需要存储数十亿个小对象.
假设我使用UUID作为键,GET对象和PUT对象如何在这些条件下执行?我可以期待O(1),O(logN)或O(n)性能吗?
我是否需要重新考虑我的架构并以某种方式细分更大的存储桶以保持性能?我需要对象查找(GET)尽可能快.
阅读Superagent
文档,没有区分 POST 和 PUT 请求:
request.post('/user')
.set('Content-Type', 'application/json')
.send('{"name":"tj","pet":"tobi"}')
.end(callback)
Run Code Online (Sandbox Code Playgroud)
如何使用这个包做 PUT 请求?
我正在尝试将视频上传到s3,并有一个预先签名的PUT网址。以下是执行此操作的代码。
import {Component} from '@angular/core';
import {NavController} from 'ionic-angular';
import {MediaCapture} from 'ionic-native';
import {Http} from '@angular/http';
import { Transfer } from 'ionic-native';
@Component({
selector: 'page-home',
templateUrl: 'home.html'
})
export class HomePage {
public base64Image: string;
constructor(private navController: NavController, public http: Http) {
this.base64Image = "https://placehold.it/150x150";
}
public takeVideo() {
MediaCapture.captureVideo({limit:2}).then(function(videoData){
var link = "https://mysamplebucket.s3.amazonaws.com/non-tp/esx.mov?AWSAccessKeyId=TEMP_KEYY&Expires=1482290587&Signature=JUIHHI%2FcnLkqSVg%3D&x-amz-security-token=FQoDYXDGRfTXk6hma0Rxew6yraAX%2FlYGaQmYLwkvsuuB3%2F%2FtPvGDVs3dIQG0Ty3MeMjn0p%%26djt5xhAMk73pndJbZP0tCYYlvPvlUAyL8x7O%%2B3AwEa%%2B9b43yarIuPLCvujmKLTDyi%%3D%3Di";
var options: any;
options = {
fileKey: 'file',
fileName: 'esx.mov',
httpMethod: 'PUT',
chunkedMode: false,
mimeType: 'video/quicktime',
encodeURI: false,
headers: {
'Content-Type': 'video/quicktime'
}
};
var …
Run Code Online (Sandbox Code Playgroud) 我目前正在尝试打印("Ada.Text_IO.Put")一个泛型类型,但这总是失败,出现这样的错误:
missing argument for parameter "Item" in call to "Put" declared at a-tiinio.ads:60, instance at a-inteio.ads:18
expected type "Standard.Integer"
found private type "My_Type" defined at testtype.ads:2
Run Code Online (Sandbox Code Playgroud)
这些错误是有道理的,但我不知道如何打印我的价值观.以下行显示了我的泛型类型.
generic
type My_Type is private;
with function "+"(Left: My_Type; Right: My_Type) return My_Type;
package TestType is
...
end TestType;
Run Code Online (Sandbox Code Playgroud)
谢谢你的帮助!
使用Lists
和Maps
,我开始思考,为什么添加的Map方法Object
被称为put而对于List来说add
呢?
它只是开发人员的意愿,或者在命名这些方法时有所不同.
可能是开发人员在添加Map
/使用List
何种数据结构时知道的方法名称?或者那些名字描述了他们的工作方式?
所以,我想要做的是从 Linux 中的终端运行一个 HTTP 请求,“PUT”。不是 POST,不是 GET,'PUT'。
我知道在终端中你可以只输入“GET http://example.com/ ”,但是当我输入“PUT http://example.com ”时(以及之后的一堆其他变量......),终端说PUT 不是命令。
这是我尝试过的:
:~$ PUT http://example.com
PUT: command not found
Run Code Online (Sandbox Code Playgroud)
那么,是否有命令“PUT”的替代品,或者从终端发送 HTTP 请求的某种方式?
我不想使用任何外部程序......我不想下载或安装任何东西。还有其他方法吗?
我正在看这段代码:
$diag_cmd = pack("CCSV", DIAG_SUBSYS_CMD_F, DIAG_SUBSYS_PWRDB, PWRDB_DIAG_PKT_SCRIPT | $processor_select, length($s_part)) . $s_part;
$diag_request_var = Variant(VT_ARRAY | VT_UI1, length $diag_cmd);
$diag_request_var->Put($diag_cmd);
Run Code Online (Sandbox Code Playgroud)
其中Variant的定义如下:
sub Variant {
return Win32::OLE::Variant->new(@_);
}
Run Code Online (Sandbox Code Playgroud)
我不确定它做了什么以及PUT在Perl中实际做了什么.
有任何想法吗?