Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/python-2.7/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python flask--根据访问路由的方式更改行为_Python_Python 2.7_Flask - Fatal编程技术网

Python flask--根据访问路由的方式更改行为

Python flask--根据访问路由的方式更改行为,python,python-2.7,flask,Python,Python 2.7,Flask,假设我有一条路线。如果它是由用户访问的,我只想给他们一个静态json。但是,如果我的脚本调用了它,我希望能够说执行一组不同的指令。即,生成json 例如,类似这样的东西(非常伪代码) 这怎么可能呢?一些涉及\uuuu文件\uuuuu或类似内容的事情?听起来你想把路线分开。如果你在做不同的事情,为什么要把它们都放在一个函数中呢?Martijn是这么说的。如果您有两个用例,请将它们分开。如果您想更改答案的形式,即将HTML返回给用户,将JSON返回给脚本,标准方法是使用Accept标头: @app.

假设我有一条路线。如果它是由用户访问的,我只想给他们一个静态json。但是,如果我的脚本调用了它,我希望能够说执行一组不同的指令。即,生成json

例如,类似这样的东西(非常伪代码)


这怎么可能呢?一些涉及
\uuuu文件\uuuuu
或类似内容的事情?

听起来你想把路线分开。如果你在做不同的事情,为什么要把它们都放在一个函数中呢?Martijn是这么说的。如果您有两个用例,请将它们分开。如果您想更改答案的形式,即将HTML返回给用户,将JSON返回给脚本,标准方法是使用Accept标头:
@app.route('/make_chart')
def make_chart():
  if #accessed by a user and not a script#:
    with open(app.config['JSON_PATH'], 'r') as j:
      return j
  elif #if my script is to call it using the route list#:
    dm = DataModel(app.config['CSV_PATH'])
    new_data = dm.do_some_stuff
    with open('some_name', 'w') as json_file:
      json.dump(new_data, json_file)
    return 200