我正在尝试执行PUT请求来创建新的BLOB.在使用Authorization标头出现一些初期问题之后,当我尝试将文件放入容器时,我现在收到404 Resource Not Found错误.
我确信我的网址是正确的:
https://accountNameHere.blob.core.windows.net/containerNameHere
我检查并重新检查以确保我包含容器名称和帐户名称,并且它们都是正确的.
还有什么可能导致这种情况(除了我做错的明显可能性)?
编辑添加:
以下是原始请求标头:
PUT /testss HTTP/1.1
Host: accountName.blob.core.windows.net
Accept: */*
Connection: Keep-Alive
0: content-encoding
1: content-language
2: content-length
3: content-md5
4: content-type
5: date
6: if-modified-since
7: if-match
8: if-none-match
9: if-unmodified-since
10: range
x-ms-blob-type: BlockBlob
x-ms-version: 2011-08-18
x-ms-date: Fri, 09 Aug 2013 04:17:59 GMT
Content-Length: 126377
Authorization: SharedKey accountName:MBVLmoxzxZr+tf8EZw2GkbFLEHuNn8FNAaEHrcty/cM=
Expect: 100-continue
Run Code Online (Sandbox Code Playgroud)
这是我发送的符号字符串:
PUT x-ms-blob-type:BlockBlob x-ms-date:Fri, 09 Aug 2013 04:03:20 GMT x-ms-version:2011-08-18 /accountName/test
Run Code Online (Sandbox Code Playgroud)
这是他们的期望:
PUT 126377 x-ms-blob-type:BlockBlob x-ms-date:Fri, 09 Aug 2013 04:02:17 GMT …Run Code Online (Sandbox Code Playgroud) 我正在使用JQuery Mobile构建一个移动界面,用于需要用户身份验证的现有Web应用程序,我无法确定实施登录过程的最佳方法.
我不是那么关心服务器端身份验证,而是如何在用户端实现它.
经过一些实验,似乎选项是:
使用POST\redirect提交标准表单:
-Disable自动ajax data-ajax="false"
-User提交,检查服务器上的凭据,然后在成功时发送重定向到应用程序或在失败时返回登录页面.
使用$.mobile.changePage
-send username/passwd通过Ajax
的Ajax方法 - 基于响应,添加app的首页$.mobile.changePage或显示错误消息
Ajax方法 - 与window.location.replace
选项2类似,除了用于window.location.replace添加应用程序的首页
使用POST的Ajax方法; 仅在登录失败时重定向 -
为表单提交启用了ajax.
- 在服务器端,将您的用户身份验证功能与应用程序的输入页面组合在一起,只有在设置了表单域时才会执行.
- 成功登录后,返回应用程序的首页.
- 登录失败,重定向回登录页面.
- 如果未设置表单值,请检查用户是否已正确登录,然后返回标准输出页面.如果未登录,请重定向回登录.
一些注意事项:
- 必须使用POST来避免将登录数据附加到URL -
保持正确的后退按钮功能,以便导航用户友好似乎有点棘手.
- 我希望尽可能轻松地使页面重新加载,使流程尽可能轻松
有任何想法吗?
编辑:
我找到了第四种方法,这可能是最好的方法.它避免了POST/redirect方法导致的后退按钮功能问题.如果用户在第一次尝试时进行身份验证,则会在整个时间内保持平滑的页面转换.如果不是,则在成功登录后将继续保持页面转换流程.此外,JQM的所有内置错误处理功能仍然可用.
Firebug过去常常在Computed面板中显示样式,计算样式分组:
但由于某种原因,它现在显示如下计算样式:
唯一可用的分组是"其他",它似乎包含每种CSS样式.如何将CSS样式组组合在一起?
我使用Firefox 46和Firebug 2.0.16.变化开始似乎无处不在,我没有调整任何设置.
我尝试在下拉菜单中切换每个选项.的值computedStylesDisplay设置为grouped(默认值).我尝试切换到alphabetical然后回到grouped但它没有改变任何东西.
使用Valums Ajax文件上传器时,如何触发上传?
默认行为是在用户选择文件后立即开始上载.我希望防止这种情况发生,而是在用户选择文件后单击单独的"上传"按钮时触发上传.
我查看了代码,发现上传是从change附加到文件输入的事件开始的.我首先添加return false;到该onSubmit函数,然后将click事件附加到触发change事件的另一个按钮:
$('#startUpload').on('click', function() {
// some conditionals
$('input[name="file"]').trigger('change');
});
Run Code Online (Sandbox Code Playgroud)
这不起作用.它只是再次打开文件菜单.
如何在用户选择文件后立即阻止上传,而在用户单击另一个按钮时触发上传?
我发现了类似的问题,但对这个问题没有明确的答案.我有这张桌子:
CREATE DATABASE testDB DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
CREATE TABLE testTable
(
firstName binary(32) not null,
lastName binary(32) not null
/* Other non-binary fields omitted */
)
engine=INNODB DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
Run Code Online (Sandbox Code Playgroud)
这句话执行得很好:
INSERT INTO testTable (firstName) VALUES (AES_ENCRYPT('Testname', 'test'));
Run Code Online (Sandbox Code Playgroud)
但是,这会返回NULL:
SELECT AES_DECRYPT(firstName, 'test') FROM testTable;
Run Code Online (Sandbox Code Playgroud)
为什么这会返回NULL?
Fwiw,按预期返回"testValue":
SELECT AES_DECRYPT(AES_ENCRYPT('testValue','thekey'), 'thekey');
Run Code Online (Sandbox Code Playgroud) 我希望有人可以就如何改进这个功能给我一些意见.其目的是评估表单输入是否为有效整数,如果不是,则默认返回零,如果第二个参数= true,则返回-1.
编辑:这是我正在使用的功能的更新版本.似乎两个最具挑战性的部分是确保空字符串在为空字符串($ neg = true)期望-1时评估为0,并且使用左填充零作为整数而不是八进制来评估输入.
function clean_integer($value, $neg=false)
{
if (!is_numeric($value)) {
if (!$neg) {
return 0;
else {
return -1;
}
}
$value = ltrim(trim($value), '0');
if (!$neg)
{
if ($value !== true && ((string)(int) $value) === ((string) $value)) {
return (int) $value;
}
else {
return 0;
}
}
else
{
if (!is_numeric($value)) {
return 0;
}
if ($value !== true && ((string)(int) $value) === ((string) $value)) {
return (int) $value;
}
else {
return -1;
} …Run Code Online (Sandbox Code Playgroud)