小编tsc*_*erg的帖子

Slim-修改中间件内部的POST请求正文

我正在使用Justinrainbow的Slim v3json模式验证器作为我的API。我想做的就是无法上班的是:

  • 在中间件中:使用默认值验证传入的json。这产生一个修改的对象
  • 将修改后的对象写回到请求中,以便可以由核心控制器处理

我无法做到的是:

# inside middleware:
$requestbody = $request->getBody();
$requestobject = json_decode($requestbody);
# validation and modification of $requestobject takes place here
$request->getBody()->write(json_encode($requestobject));
$request->reparseBody();
return $next($request, $response);
Run Code Online (Sandbox Code Playgroud)

从那时起,请求主体为null。我究竟做错了什么?我相当确定我修改Slim对象的方式有问题,因为当我手动尝试时它也无法正常工作$request->getBody()->write('{"some": "content"}')

rest jsonschema slim

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

neo4j cypher 在 csv 导入期间存储数组属性

我需要从 csv 表单导入数据

id;name;targetset
1;"somenode",[1,3,5,8]
2,"someothernode",[3,8]
Run Code Online (Sandbox Code Playgroud)

到图中,我需要使用 cypher 将targetset其存储为集合(数组)。我试过

USING PERIODIC COMMIT
LOAD CSV WITH HEADERS FROM "file:/mytable.csv" AS row FIELDTERMINATOR ';'
CREATE (:MyNode {id: row.id, name: row.name, targetset: row.targetset});
Run Code Online (Sandbox Code Playgroud)

但它存储targetset为字符串,例如"[1,3,5,8]". 似乎没有一个函数可以将数组编码字符串转换为实际数组,就像将toInt字符串转换为整数一样。还有另外一种可能吗?

csv arrays neo4j cypher

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

如何获取cypher中map的值

从 cypher 中的地图开始map,我可以通过 获取密钥keys(map),但似乎没有values类似的东西,而且 APOC 似乎没有合适的程序。

编辑: 使用最新的 neo4j 和 apoc 版本

我错过了什么吗?

maps neo4j cypher

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

在 Flask API 中查看函数之前修改请求数据

在 Flask 中是否允许在视图函数之前修改请求 json 数据(例如在装饰器中)?甚至有可能吗?想象这样的事情:

from functools import wraps
from flask import request, current_app

def my_function_decorator(func):
    @wraps(func)
    def decorated_function(*args, **kwargs):
        req = request.get_json()
        # do something to calculate the new value
        req["new key"] = "new value"
        request.set_json(req)

        return func(*args, **kwargs)

    return decorated_function 
Run Code Online (Sandbox Code Playgroud)

目的是根据发送到我的服务的地址数据,对来自第三方服务的经纬度数据进行地理编码。不确定装饰器是否是正确的选择,或者它是 before_request 还是其他东西,或者什么都没有。

python json request flask

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

标签 统计

cypher ×2

neo4j ×2

arrays ×1

csv ×1

flask ×1

json ×1

jsonschema ×1

maps ×1

python ×1

request ×1

rest ×1

slim ×1