Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/jenkins/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 如何通过绘图从Dash中的回调函数访问cookie?_Python_Cookies_Plotly Dash - Fatal编程技术网

Python 如何通过绘图从Dash中的回调函数访问cookie?

Python 如何通过绘图从Dash中的回调函数访问cookie?,python,cookies,plotly-dash,Python,Cookies,Plotly Dash,我有一个简单的短划线回调函数,如下所示: @app.callback( dash.dependencies.Output('test_output', 'children'), [dash.dependencies.Input('test_input', 'value')]): def process(val): return html.Div('test') 现在我要做一些饼干。正如我们在Dash的源代码中所看到的,包装器函数使用序列化的返回数据创建普通的Flask响

我有一个简单的短划线回调函数,如下所示:

@app.callback(
    dash.dependencies.Output('test_output', 'children'),
    [dash.dependencies.Input('test_input', 'value')]):
def process(val):
    return html.Div('test')
现在我要做一些饼干。正如我们在Dash的源代码中所看到的,包装器函数使用序列化的返回数据创建普通的Flask响应对象:

def wrap_func(func):
    def add_context(*args, **kwargs):

        output_value = func(*args, **kwargs)
        response = {
            'response': {
                'props': {
                    output.component_property: output_value
                }
            }
        }

        return flask.Response(
            json.dumps(response,
                       cls=plotly.utils.PlotlyJSONEncoder),
            mimetype='application/json'
        )

    self.callback_map[callback_id]['callback'] = add_context

    return add_context
因此,如果这些代码是我项目的一部分,我会在这里使用
Response.set\u cookie

会话的情况似乎有所不同-我可以通过包装函数访问和修改会话对象,从而修改
session
cookie

如何从Dash callback设置和获取Cookie?也许Flask有一种方法可以在不直接创建响应对象的情况下做这样的事情

更新

我为此创建了一个问题:

和拉动请求以添加此功能:

您正在寻找的功能最终合并到: (2019年3月4日)

他们关于如何设置cookie的示例如下所示:

@app.callback(Output('output', 'children'), [Input('input', 'value')])
def update_output(value):
    dash.callback_context.response.set_cookie(
        'dash cookie', value + ' - cookie')
    return value + ' - output'