如何更新露天共享站点?

2024-09-26 18:12:20 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试更新我用Alfresco中的Share脚本创建的网站(只需更改其名称),但是我得到了401响应。我确信我的登录名和密码是正确的。你知道吗

代码:

s = requests.Session()
data = {'username':"admin", 'password':"admin"}
url = "http://127.0.0.1:8080/share/page/dologin"
r = s.post(url, data=data)
if (r.status_code != 200) :
    print "Incorrect login or password "
    url1 = "http://127.0.0.1:8080/alfresco/service/api/sites/OdooSite50"
    print url_alfresco

    jsonString = JSONEncoder().encode({
        "title" : name
    })

    headers = {'content-type': 'application/json',"Accept":"application/json"}
    site = s.put(url1,headers=headers,data=data)

    if (site.status_code != 200) :
        print " Error while creating site"
        print site.status_code

我得到了第二部分的错误。登录部分没有任何问题。 你能告诉我我做错了什么吗?你知道吗


Tags: jsonhttpurldataifadminapplicationstatus
1条回答
网友
1楼 · 发布于 2024-09-26 18:12:20

这是因为您使用不同的上下文进行查询。你知道吗

露天烟囱由多个部分组成:

  • 你知道吗露天战争你知道吗
  • 你知道吗分享。战争你知道吗
  • 你知道吗解决战争你知道吗

如果我们忘记了解决问题的部分,把注意力集中在你的问题上,你就有:

  • 内容存储库(alfresco),包含alfresco的核心服务
  • 一个web应用程序(共享),它包含应用程序的web ui,并与内容存储库通信以执行某些操作

他们的背景不同,生活也不同。一个可以在服务器上,另一个可以在另一个服务器上。你知道吗

所以这意味着,当您进行身份验证时,您是在共享上下文中进行的:

http://127.0.0.1:8080/share/page/dologin

当您试图更新您的网站时,您是在露天上下文中进行的(您尚未在该上下文中进行身份验证):

http://127.0.0.1:8080/alfresco/service/api/sites/OdooSite50

我看到两种解决方案:

  1. 您在alfresco上下文(webservicealfresco/s/api/login)上进行身份验证,然后您将获得调用alfresco站点服务的身份验证
  2. 通过共享代理:/alfresco/service/api/sites变成/share/proxy/alfresco/api/sites

相关问题 更多 >

    热门问题