小编asP*_*dge的帖子

Java Spring RestTemplate设置不需要的标头

我想使用响应rest api的服务.但是,当我将Accept-Charset标头设置为long值的请求发送时,该服务会中断.一个显而易见的解决方案是明确设置此标头:"Accept-Charset": "utf-8".然而,这似乎不起作用:

    String requestBody = "{\"message\": \"I am very frustrated.\"}";
    RestTemplate restTemplate = new RestTemplate();
    HttpHeaders headers = new HttpHeaders();
    ArrayList<Charset> acceptCharset = new ArrayList<>();
    acceptCharset.add(StandardCharsets.UTF_8);
    headers.setAcceptCharset(acceptCharset);
    log.info(headers.toString());
    ResponseEntity<String> res = restTemplate.exchange("http://httpbin.org/post", HttpMethod.POST, new HttpEntity<>(requestBody, headers), String.class);
    String httpbin = res.getBody();

    log.info("httpbin result: " + httpbin);
Run Code Online (Sandbox Code Playgroud)

这会返回以下结果:

-> {Accept-Charset=[utf-8]}

-> INFO httpbin result: {
  "args": {},
  "data": "{\"message\": \"I am very frustrated.\"}",
  "files": {},
  "form": {},
  "headers": {
    "Accept": "text/plain, application/json, application/*+json, */*",
    "Accept-Charset": "big5, big5-hkscs, cesu-8, …
Run Code Online (Sandbox Code Playgroud)

java spring

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

带有optirun的IPython笔记本

我想用一台带有NVIDIA Optimus(bumblebee)的Linux笔记本电脑上的IPython笔记本运行pycuda.通常,我可以通过键入来运行python脚本optirun python my_pycuda_script.py

但是,如果我开始optirun ipython notebook然后打开一个笔记本,一个新的内核启动,我不能再运行pycuda了.我发现如果我用调用optirun new_location_of_python它的shell脚本替换我的python可执行文件就可以了 - 但这是一个非常丑陋的黑客.有一个更好的方法吗?也许有一个神奇的功能,所以只有相关的笔记本电脑是用optirun启动的?

谢谢你的帮助!

python ipython-magic jupyter-notebook

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

为两个相似的 React 应用程序使用两个不同的入口点

我正在使用与 gulp 和 browserify 的反应。我正在一个网站上工作,我想在两个不同的位置(网址)嵌入反应元素。元素不同,但重用了大部分底层组件。

如果您有多个入口点,那么告诉 react、在何处渲染哪个组件的正确方法是什么?

我可以轻松创建两个不同的 js 文件并在相应页面上加载相关文件。但据我所知,这也会两次加载所有库和组件,并给服务器带来不必要的负载。

我还可以为入口点使用不同的 id 并捕获“目标容器不是 DOM 元素”。如果未找到 id,则会出现错误,但这感觉不对。

感谢您的帮助!

javascript browserify reactjs gulp

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

在 SQLAlchemy 原始 SQL 中设置输入参数类型

我想执行一些原始 SQL 并利用 SQLAlchemy 的 SQL 注入预防功能。

我的代码与此类似:

import sqlalchemy
from sqlalchemy.sql import text

DB_URI = '...'
engine = sqlalchemy.create_engine(DB_URI)

sql = text("SELECT * FROM some_table WHERE userid = :userid")
res = engine.execute(sql, userid=12345)
# do something with the result... 
Run Code Online (Sandbox Code Playgroud)

问题是useridinsome_table的类型是varchar。我想做的就是告诉 SQLAlchemy12345在执行语句之前转换为字符串。我知道如何在 Python 和 SQL 中进行转换。但我记得我曾经在 SQLAlchemy 中使用过显式类型定义,但我现在找不到它了。有人能指出我正确的方向吗?(我的实际问题涉及 postgresql BIGINT 与 INT 数组,但我试图保持简单。)

谢谢你的帮助!

python postgresql sqlalchemy

3
推荐指数
1
解决办法
4764
查看次数