Choose Organization

用户在登录 Application Portal 后,选择需要进入的组织。

操作权限

用户需要登录 Application Portal。

请求格式

POST https://{apigw-address}/app-portal-service/v2.2/session/set

请求参数(Body)

名称

必需/可选

数据类型

描述

orgId

必需

String

组织ID。调用 Log In 接口登录后,获取用户可进入的组织ID。

响应参数

名称

数据类型

描述

data

List<JSONObject>

登录用户信息。详见 登录用户信息结构体

登录用户信息结构体

名称

数据类型

描述

userId

String

用户ID。

userName

String

用户名称。

currentOrgId

String

当前组织ID。

currentOrgName

String

当前组织名称。

accessToken

String

请求中的 Access Token。

refreshToken

String

可用于刷新当前 Access Token 的 Refresh Token。

refreshTokenExpire

Long

Refresh Token 的过期时间。以UTC时间表示,格式见 UTC采用的ISO8601标准时间格式>>

错误码

代码

错误信息

描述

31400

orgId is required

组织ID不能为空

31401

Please login first

请先登录,获取正确的Access Token

31404

Can not find this organization.

未找到对应组织

示例

请求示例

url: https://{apigw-address}/app-portal-service/v2.2/session/set

method: POST

headers: {"Authorization":"Bearer APP_PORTAL_S_TDKKeqfYBK3m5z3LRgKVqThWDYnRBN44"}

requestBody:
{"orgId":"yourOrgId"}

返回示例

{
  "code": 0,
  "message": "OK",
  "data": {
    "userId": "yourUserId",
    "userName": "portal_demo",
    "currentOrgId": "yourOrgId",
    "currentOrgName": "Portal Demo",
    "accessToken": "APP_PORTAL_S_tsNqGkfWGj9AW6qSHADEW4wuxAHQN3dN",
    "refreshToken": "eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJ1MTU1ODkzMTYxMDkwOTEiLCJhZG1pbkxldmVsIjoyLCJpc3MiOiJBUFAtUE9SVEFMIiwid29ya2luZ09yZ2FuaXphdGlvbklkIjoibzE1NTg5MzA4OTQ0NzgxIiwidXNlck5hbWUiOiJwb3J0YWxfZGVtbyIsIndvcmtpbmdPcmdhbml6YXRpb25OYW1lIjoiUG9ydGFsIERlbW8iLCJleHAiOjE1NzAwMTg5NTgsInVzZXJJZCI6InUxNTU4OTMxNjEwOTA5MSIsImlhdCI6MTU2NzQyNjk1OCwianRpIjoiand0X2lkIn0.Ql1vNVvb0ok2uWzzU1jiBzAyvRdBOkzzfnHD4PLsi1E",
    "refreshTokenExpire": 1570018958000
  }
}

Java SDK 调用示例

public class AppPortalSdkTest{
    @Test
    public void chooseOrganizationTest() {
        String organizationId = "your_org_id";
        ChooseOrganizationRequest chooseOrganizationRequest = new ChooseOrganizationRequest(organizationId, "your_access_token");
        chooseOrganizationResponse = Poseidon.config(PConfig.init().appKey("your_access_key").appSecret("your_secret_key").debug())
                .url("https://{apigw-address}").getResponse(chooseOrganizationRequest, ChooseOrganizationResponse.class);

        System.out.println("List organization res: " + JSON.toJSONString(chooseOrganizationResponse));

        assertNotNull("Response should not be null", chooseOrganizationResponse);
        assertNotNull("Response data should not be null", chooseOrganizationResponse.data);
        assertNotNull("UserId should not be null", chooseOrganizationResponse.data.userId);

        refreshToken = chooseOrganizationResponse.data.refreshToken;
        assertNotNull("Refresh token should not be null", refreshToken);
    }
}