小编use*_*949的帖子

无法访问Windows Azure Blob存储文档,"404资源未找到"响应

我正在尝试执行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)

rest azure azure-storage azure-storage-blobs

30
推荐指数
4
解决办法
2万
查看次数

JQuery Mobile - 用户登录最佳实践

我正在使用JQuery Mobile构建一个移动界面,用于需要用户身份验证的现有Web应用程序,我无法确定实施登录过程的最佳方法.

我不是那么关心服务器端身份验证,而是如何在用户端实现它.

经过一些实验,似乎选项是:

  1. 使用POST\redirect提交标准表单:
    -Disable自动ajax data-ajax="false"
    -User提交,检查服务器上的凭据,然后在成功时发送重定向到应用程序或在失败时返回登录页面.

  2. 使用$.mobile.changePage
    -send username/passwd通过Ajax
    的Ajax方法 - 基于响应,添加app的首页$.mobile.changePage或显示错误消息

  3. Ajax方法 - 与window.location.replace
    选项2类似,除了用于window.location.replace添加应用程序的首页

  4. 使用POST的Ajax方法; 仅在登录失败时重定向 -
    为表单提交启用了ajax.
    - 在服务器端,将您的用户身份验证功能与应用程序的输入页面组合在一起,只有在设置了表单域时才会执行.
    - 成功登录后,返回应用程序的首页.
    - 登录失败,重定向回登录页面.
    - 如果未设置表单值,请检查用户是否已正确登录,然后返回标准输出页面.如果未登录,请重定向回登录.

一些注意事项:
- 必须使用POST来避免将登录数据附加到URL -
保持正确的后退按钮功能,以便导航用户友好似乎有点棘手.
- 我希望尽可能轻松地使页面重新加载,使流程尽可能轻松

有任何想法吗?

编辑:
我找到了第四种方法,这可能是最好的方法.它避免了POST/redirect方法导致的后退按钮功能问题.如果用户在第一次尝试时进行身份验证,则会在整个时间内保持平滑的页面转换.如果不是,则在成功登录后将继续保持页面转换流程.此外,JQM的所有内置错误处理功能仍然可用.

authentication jquery login jquery-mobile

10
推荐指数
2
解决办法
3万
查看次数

如何制作Firebug组计算样式?

Firebug过去常常在Computed面板中显示样式,计算样式分组:

在此输入图像描述

但由于某种原因,它现在显示如下计算样式:

在此输入图像描述

唯一可用的分组是"其他",它似乎包含每种CSS样式.如何将CSS样式组组合在一起?

我使用Firefox 46和Firebug 2.0.16.变化开始似乎无处不在,我没有调整任何设置.

我尝试在下拉菜单中切换每个选项.的值computedStylesDisplay设置为grouped(默认值).我尝试切换到alphabetical然后回到grouped但它没有改变任何东西.

firefox firebug

8
推荐指数
1
解决办法
720
查看次数

如何使用Valums Ajax File-Uploader触发上传文件?

使用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)

这不起作用.它只是再次打开文件菜单.

如何在用户选择文件后立即阻止上传,而在用户单击另一个按钮时触发上传?

html javascript ajax jquery

5
推荐指数
1
解决办法
4597
查看次数

为什么AES_DECRYPT返回null?

我发现了类似的问题,但对这个问题没有明确的答案.我有这张桌子:

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)

mysql aes

5
推荐指数
1
解决办法
8569
查看次数

代码检查 - 用于验证具有可选返回值的整数的函数

我希望有人可以就如何改进这个功能给我一些意见.其目的是评估表单输入是否为有效整数,如果不是,则默认返回零,如果第二个参数= 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)

php

2
推荐指数
1
解决办法
102
查看次数