小编Bob*_*bby的帖子

注销:GET或POST?

这个问题不是关于何时一般使用GET或POST; 它是关于处理Web应用程序注销的推荐方法.我已经在一般意义上找到了关于GET和POST之间差异的大量信息,但我没有找到这个特定场景的明确答案.

作为一个实用主义者,我倾向于使用GET,因为实现它比POST更简单; 只需删除一个简单的链接就可以了.这似乎是我能想到的绝大多数网站的情况,至少从头脑中可以看出来.甚至Stack Overflow也可以使用GET进行注销.

让我犹豫不决的是(尽管很老)一些论点,即一些网络加速器/代理通过访问和检索他们在页面中找到的每个链接来预先缓存页面,因此用户在点击它们时会得到更快的响应.我不确定这是否仍然适用,但如果是这种情况,那么从理论上讲,一旦有用这种加速器的用户在登录后就会被赶出应用程序,因为她的加速器会找到并检索注销链接,即使她从未点击过它.

到目前为止我所阅读的所有内容都建议POST应该用于"破坏性操作",而不改变应用程序内部状态的操作(如查询等)应该用GET处理.基于此,这里真正的问题是:

从应用程序注销被视为破坏性操作/是否会改变应用程序的内部状态?

architecture rest post get

393
推荐指数
6
解决办法
7万
查看次数

创建没有重复的随机数

在这种情况下,MAX只有5,所以我可以逐个检查重复,但我怎么能以更简单的方式做到这一点?例如,如果MAX的值为20,该怎么办?谢谢.

int MAX = 5;

for (i = 1 , i <= MAX; i++)
{
        drawNum[1] = (int)(Math.random()*MAX)+1;

        while (drawNum[2] == drawNum[1])
        {
             drawNum[2] = (int)(Math.random()*MAX)+1;
        }
        while ((drawNum[3] == drawNum[1]) || (drawNum[3] == drawNum[2]) )
        {
             drawNum[3] = (int)(Math.random()*MAX)+1;
        }
        while ((drawNum[4] == drawNum[1]) || (drawNum[4] == drawNum[2]) || (drawNum[4] == drawNum[3]) )
        {
             drawNum[4] = (int)(Math.random()*MAX)+1;
        }
        while ((drawNum[5] == drawNum[1]) ||
               (drawNum[5] == drawNum[2]) ||
               (drawNum[5] == drawNum[3]) ||
               (drawNum[5] == drawNum[4]) )
        {
             drawNum[5] = (int)(Math.random()*MAX)+1; …
Run Code Online (Sandbox Code Playgroud)

java random

82
推荐指数
6
解决办法
25万
查看次数

从UI线程强制GUI更新

在WinForms中,如何从UI线程强制立即更新UI?

我正在做的大致是:

label.Text = "Please Wait..."
try 
{
    SomewhatLongRunningOperation(); 
}
catch(Exception e)
{
    label.Text = "Error: " + e.Message;
    return;
}
label.Text = "Success!";
Run Code Online (Sandbox Code Playgroud)

在操作之前,标签文本未设置为"Please Wait ...".

我使用另一个线程进行操作解决了这个问题,但它变得毛茸茸,我想简化代码.

c# multithreading winforms

69
推荐指数
5
解决办法
11万
查看次数

Python设计错误

不久前,当我学习Javascript时,我研究了Javascript:好的部分,我特别喜欢关于坏和丑陋部分的章节.当然,我并不同意所有内容,因为总结编程语言的设计缺陷在某种程度上是主观的 - 尽管如此,我想每个人都会同意这个关键字with在Javascript中是个错误.尽管如此,我发现阅读此类评论很有用:即使有人不同意,也有很多需要学习的地方.

是否有博客文章或一些描述Python设计错误的书籍?例如,我猜有些人会认为缺少尾调优化是一个错误; 可能还有其他值得学习的问题(或非问题).

python

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

我什么时候应该实现IDisposable?

何时实施IDisposable的最佳做法是什么?

如果在类中有一个托管对象,那么实现它是最好的经验法则,还是依赖于对象是在类中创建还是只是传入?我是否也应该为没有托管对象的类做到这一点?

.net c# vb.net idisposable

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

将字符串转换为float?

正如标题所说.我不相信这样做是可能的,但如果是让我知道的话.

这是我正在写的bukkit(我的世界服务器)插件所需要的.我想接受一个命令:tnt [power].power是返回的字符串,我想转换为float.

谢谢

java

35
推荐指数
2
解决办法
18万
查看次数

为什么C#是静态输入的?

我是一名试图学习C#的PHP网络程序员.

我想知道为什么C#要求我在创建变量时指定数据类型.

Class classInstance = new Class();
Run Code Online (Sandbox Code Playgroud)

为什么我们需要在类实例之前知道数据类型?

c# static-typing

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

运行时的'v2.0.50727',如果没有其他配置信息,则无法在4.0运行时加载

我正在将.vcproj从VS2005转换为VS2010但转换后却给出了下面提到的错误.

附加信息:混合模式程序集是针对运行时的版本"v2.0.50727"构建的,如果没有其他配置信息,则无法在4.0运行时加载.附加信息:混合模式程序集是针对运行时版本的"v2.0.50727"构建的如果没有其他配置信息,则无法在4.0运行时加载.

然后我在我的项目中添加了app.config文件,并在我的文件中添加了下面提到的信息,但它仍然给出了同样的错误.

任何人都可以帮我解决上述问题.

.net

31
推荐指数
3
解决办法
5万
查看次数

为什么你可以在VB.NET中为整数分配Nothing?

为什么我允许Nothing在VB.NET中分配值类型:

Dim x as Integer = Nothing
Run Code Online (Sandbox Code Playgroud)

但我不允许null在C#中分配:

int x = null;
Run Code Online (Sandbox Code Playgroud)

c# vb.net

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

如何检查生成的zip文件是否已损坏?

we have a piece of code which generates a zip file on our system. Everything is ok, but sometimes this zip file while opened by FilZip or WinZip is considered to be corrupted.

So here is my question: how can we check programatically if a generated zip file is corrupted?

Here is the code we are using to generate our zip files:

try {
    ZipOutputStream zos = new ZipOutputStream(new FileOutputStream(tmpFile));
    byte[] buffer = new byte[16384];
    int contador = -1;
    for …
Run Code Online (Sandbox Code Playgroud)

java zip

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