首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Root.Js:如何向THttpServer传递参数?

Root.Js:如何向THttpServer传递参数?
EN

Stack Overflow用户
提问于 2021-08-09 06:40:36
回答 2查看 33关注 0票数 0

我正在使用root.js,通过JavaScript查询固定的TH2I

代码语言:javascript
复制
<script type='text/javascript'>
    var histo;
    JSROOT.httpRequest("https://subdomain.doamin.xx/root/Objects/subfolder/histo/root.json", 'object')
            .then(obj => { 
      histo = JSROOT.parse(obj);
      histo.fName = "2D";
      JSROOT.redraw('object_draw', histo, "lego2");
      console.log(obj)
    })
  </script>

在后端,我正在做(用Python):

代码语言:javascript
复制
serv = ROOT.THttpServer("http:8080")
serv.CreateServerThread()
histo = ROOT.TH2I('h1', '', 320, 0, 320, 320, 0, 320)
histo.SetName("histo")
histo.SetBinContent(40, 50, 5)
serv.Register("subfolder", histo)

现在,我希望将参数传递给THttpServer以生成动态直方图,例如,通过解析作为数据源的(非根)数据文件的文件名。THttpServer::RegisterCommand()documentation提到了一些参数,我也是这样做的:

代码语言:javascript
复制
hpx = Hpx()
serv.RegisterCommand('/test', '/hpx/.notify(arg1%,\'arg2%\')')

其中,Hpx是提供带有两个参数的notify函数的某个类。我试着把它打给

代码语言:javascript
复制
https://subdomain.doamin.xx/root/Objects/test/root.json?arg1=1&arg2=2

但是Hpx::notify没有被调用。

JSROOT.httpRequest中也有一种post_data,但是THttpServer不应该返回(JSon)数据。

EN

回答 2

Stack Overflow用户

发布于 2021-09-15 11:16:16

应该使用cmd.json请求。root.json返回所请求对象的JSON表示形式。

您可以在THttpServer documentation中找到更多详细信息

对于未来-请向ROOT forum提交有关根框架的问题。

票数 1
EN

Stack Overflow用户

发布于 2021-09-16 12:20:51

See ROOT forum.

代码语言:javascript
复制
self.__serv.RegisterCommand('/Folder/Start', TPython::Exec("do_something(\'%arg1%\')")')  # for strings
self.__serv.RegisterCommand('/Folder/Start', 'TPython::Exec("do_something(%arg1%)")') # for integers / floats

def do somethings(arg1)需要在类之外。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68707792

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档