小编kei*_*bel的帖子

在jquery中对303状态代码做出反应(防止重定向)

当我向某个服务器发送请求时,将发出303响应,然后是请求的响应以及200状态代码.有趣的是,我只在开发人员控制台的网络视图中看到这一点.检查我的$ .ajax()请求的状态代码和响应时,将会有第二个请求的响应,以及200个http状态代码.

问题是似乎第二个请求被缓存(虽然200状态代码),我真的需要它是不可缓存的.因此,我真的想介入使用http 303状态代码进行的转发过程.我希望我的jquery函数检查状态代码,然后发送带有显式头的get请求,告诉服务器不要缓存响应.

好吧,我只是不知道如何做到这一点,因为(如上所述)jQuery.ajax方法将响应转发请求的响应和状态代码(200).

你能帮助我吗?

编辑

10.3.4 303见其他

可以在不同的URI下找到对请求的响应,并且应该使用该资源上的GET方法检索.此方法主要用于允许输出POST激活的脚本以将用户代理重定向到选定的资源.新URI不是最初请求的资源的替代引用.303响应绝不能被缓存,但对第二个(重定向)请求的响应可能是可缓存的.

也许我需要以某种方式阻止用户代理重定向自己,所以我可以做重定向?

或者有没有办法简单地告诉服务器/浏览器不要缓存来自客户端的第二个请求?或者阻止它重定向我的请求?或者至少在重定向之前修改第二个请求?

javascript ajax jquery caching http-status-code-303

12
推荐指数
1
解决办法
9963
查看次数

很高兴摆脱java.io.WinNTFileSystem.createFileExclusively的java.io.Exception?

我目前遇到的问题是我遇到了一个我从未见过的异常​​,这就是为什么我不知道如何处理它.

我想根据给定的参数创建一个文件,但它不起作用.

public static Path createFile(String destDir, String fileName) throws IOException {
        FileAccess.createDirectory( destDir);

        Path xpath = new Path( destDir + Path.SEPARATOR + fileName);

        if (! xpath.toFile().exists()) {
            xpath.toFile().createNewFile();
            if(FileAccess.TRACE_FILE)Trace.println1("<<< createFile " + xpath.toString() );
        }
      return xpath;
  }


  public static void createDirectory(String destDir) {
      Path dirpath = new Path(destDir);
      if (! dirpath.toFile().exists()) {
          dirpath.toFile().mkdir();
          if(TRACE_FILE)Trace.println1("<<< mkdir " + dirpath.toString() );
      }
  }
Run Code Online (Sandbox Code Playgroud)

每次运行我的应用程序时,都会发生以下异常:

java.io.IOException: The system cannot find the path specified
at java.io.WinNTFileSystem.createFileExclusively(Native Method)
at java.io.File.createNewFile(Unknown Source)
[...]
Run Code Online (Sandbox Code Playgroud)

我怎么摆脱它?(我使用的是Win7 …

java windows file-io java.nio.file

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

Android - 为什么 onKeyUp 会触发 KeyEvent,但 onKeyDown 不会?

在我当前的视图中,打开了一个键盘,其中包含数字 0 到 9、删除键和回车键。我添加了一个onKeyDown和 一个onKeyUp事件。按下时两者都应将键码记录到调试控制台。

@Override
public boolean onKeyDown(int pKeyCode, KeyEvent pKeyEvent) {
    Log.d("KEYDOWN", pKeyCode+"");
    return true; // also tried false
}
@Override
public boolean onKeyUp(int pKeyCode, KeyEvent pKeyEvent) {
    Log.d("KEYUP", pKeyCode+"");
    return true;
}
Run Code Online (Sandbox Code Playgroud)

我按下键盘上的每个键,结果如下:

D/KEYUP: 8
D/KEYUP: 9
D/KEYUP: 10
D/KEYUP: 11
D/KEYUP: 12
D/KEYUP: 13
D/KEYUP: 14
D/KEYUP: 15
D/KEYUP: 16
D/KEYDOWN: 67
D/KEYUP: 67
D/KEYUP: 7
D/KEYUP: 66
Run Code Online (Sandbox Code Playgroud)

有人可以解释为什么 0-9 和 Enter 永远不会触发 keydown 事件吗?我真的需要它在按下 0-9 时触发。

编辑:我添加了一个解决方案,通过将这两个函数替换为dispatchKeyEvent. 但这并不能解释为什么 …

android key-events

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

如何使用JavaScript绘制折线图而不使用外部库

简而言之:

我想用JavaScript绘制线图而不使用(开源)库.我所有的工作都是JavaScript和jQuery(无插件!).

我该怎么办呢?

javascript graphics jquery graph

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

如何以更好的方式更改我的java项目中处理异常的方式?

我必须重构使用Eclipse RCP创建的Java程序.我的前任通过几次调用向我要编写单元测试的类调用ViewPart实现.ViewPart是为了异常处理目的而移交的.每次发生错误时,错误消息都将写入ViewPart的StatusLineManager.

我现在要做的是改变这个异常处理过程,因为当我想进行单元测试时,它会给我带来很多问题.

有没有办法将这些异常传递给ViewPart而不将其交给多个方法调用?

我最初的想法是创建某种ExceptionMessenger类,每次发生异常时都会对其进行初始化.但我找不到一种方法来访问ViewPart.

编辑 代码示例:

class A {
    void func() {
         B.funcB(arg, arg1, arg2, ViewPart view):
    }
}

class B {
      void funcB(arg, arg1, arg2, ViewPart view) {
           C.funcC(arg, arg1, ViewPart view);
      }
}

class C {
    void funcC(arg, arg1, ViewPart view) {
        try{
             doSomeThing():
        catch(Exception e) {
            doSomeErrorMessages(e, view);
        }
     }

    void doSomeErrorMessages(e, ViewPart view) {
        SomeOtherClass.writeToStatusLine( StatusCategory.Processing, e.getMessage(), view); 
    }
 }

class SomeOtherClass {
    void writeToStatusLine(final StatusCategory category, final String message, final …
Run Code Online (Sandbox Code Playgroud)

java architecture exception-handling exception eclipse-rcp

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

有没有办法检测Android中的软键盘是否打开?

我的应用程序旨在收集数据。但它只需要在键盘可见时收集数据。仅在用户打字时收集数据是不够的,所以我肯定需要知道键盘是否可见。

我知道,类似的问题之前已经发布过(How to check Visibility of software Keyboard in Android?), 但最后一个获得大量赞成票的答案是从2012 年开始的,我想从那时起 Android 发生了很多事情。

那么,我可以检测键盘是否打开/可见吗?

android android-softkeyboard

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