问题列表 - 第18586页

在App Engine上使用Django处理HTTP HEAD请求的最佳实践

我在我的应用程序中收到HEAD请求,并想知道处理它们的最佳方法.选项包括:

  • 将它们转换为GET,正常处理GET,然后:
    • 脱掉身体(虽然我不知道怎么样 - response.content = ''似乎没有这样做.
    • 似乎应用程序引擎自动剥离身体,发出警告"丢弃意外的身体以响应HEAD请求"

看起来这很干净,并且可以使用装饰器或中间件很好地编写.

  • 特别处理每个HEAD请求:
    • 这意味着我可以避免在某些(很多?)情况下访问DataStore.
    • 显然,存在一种风险,即通过这种方法将阻止设置Content-length头的中间件.

还要别的吗?我该怎么办?在这里使用App Engine会有所作为吗?有细微的细节; 如果是的话,是否有合适的中间件可供使用?要转换为GET,`request.method ="GET"就足够了(似乎有效)?

django google-app-engine http request head

9
推荐指数
1
解决办法
4378
查看次数

PHP将图像从多个页面上传到一个目录

我有一个脚本将图像上传到我的网站,它在本地工作(甚至还没有在网络服务器上测试)但问题是我无法弄清楚如何将图像上传到中央无论脚本在何处运行,都可以使用位置.

例如,我的网站结构如下所示:

/ROOT/
   /IMAGES/
   /USER/
      upload.php
      /IMAGES/
      /ADS/
         upload.php
         /IMAGES/
      /COUPONS/
         upload.php
         /IMAGES/
Run Code Online (Sandbox Code Playgroud)

现在,不同的upload.php文件继承自另一个具有上传脚本的php文件.在脚本中,设置上传路径的行如下所示$newname = "images/".$image_name;.这条线就是为什么我在User下面有一个"images"目录,一个在AD下面,一个在Coupons下面.我想要的是能够让我的脚本将所有图像上传到/ ROOT /目录下的/ IMAGES /目录,但我只能弄清楚如何使路径上升(使用"../")而不是而不是从根开始走下去.如何让它始终上传到/ ROOT/IMAGES /目录?

php upload file-upload

0
推荐指数
1
解决办法
836
查看次数

为什么String.IsNullOrEmpty(str)而不是str.IsNullOrEmpty()?

有人可以向我解释为什么在.NET中我会写String.IsNullOrEmpty(str)而不是str.IsNullOrEmpty()?必须有合理的理由,但我不知道.

听起来你们都在说

  1. 你不能从C#/ .NET中为空的对象中调用方法(我在C++中这样做,它只是不访问任何成员变量)
  2. .NET 2.0中不存在扩展方法
  3. 微软并不打算更新标准,可能觉得它无关紧要

.net c# vb.net string

6
推荐指数
3
解决办法
2509
查看次数

从C++/CLI加载相互依赖的程序集

我想从C++/CLI加载两个程序集; 程序集A取决于程序集B,两者都是VB.Net项目(3.5).我希望它们从一个字节数组加载,所以我使用Assembly :: Load(),但是当我尝试从程序集A实例化一个类时,框架忽略了先前加载的程序集B并尝试再次加载它,这会失败,因为它不在搜索路径中.程序集的"名称"是相同的,所以我不知道它为什么会失败.出于测试目的,我的程序直接从编译的图像加载字节,但实际代码将以不同方式加载.这是我的测试代码:

#include "stdafx.h"

using namespace System;
using namespace System::Windows::Forms;
using namespace System::IO;
using namespace System::Reflection;

[STAThreadAttribute]
int main(array<System::String ^> ^args)
{
    array<unsigned char>^   bytes;
    FileStream^     f;

    f = gcnew FileStream(L"c:\\...\\AssemblyB.dll", FileMode::Open);
    bytes = gcnew array<unsigned char>((int)f->Length);
    f->Read( bytes, 0, (int) f->Length );
    f->Close();
    f = nullptr;
    Assembly^   assemblyb = Assembly::Load(bytes);

    f = gcnew FileStream(L"c:\\...\\AssemblyA.dll", FileMode::Open);
    bytes = gcnew array<unsigned char>((int)f->Length);
    f->Read( bytes, 0, (int) f->Length );
    f->Close();
    f = nullptr;
    Assembly^   assemblya = Assembly::Load(bytes);

    bytes = nullptr; …
Run Code Online (Sandbox Code Playgroud)

c++-cli filenotfoundexception assembly.load

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

构造函数可以返回哪些值以避免返回此值?

除了this使用new关键字调用构造函数之外,Javascript中的return语句可以返回一个值的具体情况是什么?

例:

function Foo () {
  return something;
}

var foo = new Foo ();
Run Code Online (Sandbox Code Playgroud)

如果我没有弄错,if something是非函数原语,this将被返回.否则something返回.它是否正确?

IOW,可以something采取什么样的价值观(new Foo () instanceof Foo) === false

javascript constructor new-operator

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

Zend_Date :: toString()输出错误的年份.我的代码中的错误,还是Zend_Date?

我正在Zend_Date设置和获得年份,但它没有被设置为正确的年份.我将年份定为2010年,并将年份作为2009年返回.我做错了什么?有没有错误Zend_Date

$date = new Zend_Date('2010-01-03', 'YYYY-MM-dd');
echo $date->toString('MMMM d, YYYY');
//outputs January 3, 2009
Run Code Online (Sandbox Code Playgroud)

必须正确设置年份,因为获取日期部分的日期有效:

echo $date->get(Zend_Date::YEAR); //2010
Run Code Online (Sandbox Code Playgroud)

解:

好吧,我让它工作......你有你使用小写: yyyy

echo $date->toString('MMMM d, yyyy');
Run Code Online (Sandbox Code Playgroud)
  • YYYY代表ISO年份.2010-01-03是第53周,即ISO 2009年第7天
  • yyyy 代表实际的日历年.

zend-framework zend-date

7
推荐指数
1
解决办法
5206
查看次数

Apache Velocity $ vs $!{}

对于apache的速度,使用$与$!{}访问变量之间是否存在差异.如果是这样,它是什么?

apache velocity

10
推荐指数
1
解决办法
4765
查看次数

C# 设置桌面图标后面的窗口

假设我在屏幕上的 0,0 坐标处有一个 100px x 100px 的空表单。它没有边框样式。有什么办法可以将其放置在桌面图标后面吗?

我认为这将涉及 Progman 进程,因为它包含桌面图标。但无论我尝试什么...获取窗口句柄和更改父母等,我似乎无法让窗口出现在图标后面。

有任何想法吗?

c# windows winapi handle

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

Spring ROO就像Console Application一样

我正在寻找构建一个控制台驱动的应用程序,它有点像Spring ROO控制台,任何想法?

java console spring-roo

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

批处理文件无法在IF子句中设置变量

即使匹配发生,以下代码也不会将Run更新为N.这意味着我不会进入CALL代码.我错过了什么吗?

SET Run=Y

REM Check current files date/time information and establish if the file has been present too long in the directory
REM Skip first 4 lines as header information not required

FOR /f "tokens=1-5 skip=4 delims= " %%G IN ('dir /OD "%SRCH_CRITERIA% "') DO (

    ECHO "Params to processFile:  " %%G %%H %%I ""%%K""
    IF %%K.==.  ( 
        ECHO "K:nothing"
        SET Run=N
        ECHO %Run%
    ) 

    IF %%K==free (
        ECHO "K:FREE"
        SET Run=N
        ECHO %Run%
    ) 

    ECHO %Run% RUN
    IF %Run%=="Y" …
Run Code Online (Sandbox Code Playgroud)

variables batch-file set

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