elixir_wechat v0.1.2 WeChat.Adapter.Storage.ComponentHub behaviour
The storage adapter specification for WeChat component application.
Since we need to storage(cache) some key data(e.g. access_token
/component_access_token
) for invoking WeChat APIs, this module
is used for customizing the persistence when use this library in a :hub
side of WeChat component application.
Notice: In the :hub
scenario, we need to implement the completed functions to maintain the persistence.
Writing custom storage adapter
Example for WeChat 3rd-party Platform application
defmodule MyComponentApp.Storage.Hub do
@behaviour WeChat.Adapter.Storage.ComponentHub
@impl true
def get_secret_key(appid) do
secret_key = "Get component application secret_key from your persistence..."
secret_key
end
@impl true
def get_access_token(appid, authorizer_appid) do
access_token = "Get authorizer's access_token for WeChat component application from your persistence..."
access_token
end
@impl true
def save_access_token(appid, authorizer_appid, access_token, refresh_token) do
# Save authorizer's access_token and its refresh_token to your persistence
end
@impl true
def refresh_access_token(appid, authorizer_appid, access_token) do
# Refresh authorizer's access_token for WeChat component application from your persistence
end
@impl true
def get_component_access_token(appid) do
access_token = "Get component access_token for WeChat component application from your persistence..."
access_token
end
@impl true
def save_component_access_token(appid, component_access_token) do
# Save access_token of WeChat component application
end
@impl true
def refresh_component_access_token(appid, component_access_token) do
# Refresh access_token of WeChat component application
end
@impl true
def get_component_verify_ticket(appid) do
component_verify_ticket = "Get component_verify_ticket for WeChat component application from your persistence..."
component_verify_ticket
end
@impl true
def save_component_verify_ticket(appid, component_verify_ticket) do
# Save component_verify_ticket to your persistence
end
end
Link to this section Summary
Callbacks
Get authorizer's access_token for WeChat component application
Get access_token of WeChat component application
Get component_verify_ticket of WeChat component application
Get secret_key of WeChat component application
Refresh authorizer's access_token for WeChat component application
Refresh access_token of WeChat component application
Save authorizer's access_token for WeChat component application
Save access_token of WeChat component application
Save component_verify_ticket of WeChat component application
Link to this section Callbacks
get_access_token(appid, authorizer_appid)
Get authorizer's access_token for WeChat component application.
Example
get_access_token(appid, authorizer_appid)
get_component_access_token(appid)
Get access_token of WeChat component application.
Example
get_component_access_token(appid)
get_component_verify_ticket(appid)
Get component_verify_ticket of WeChat component application.
get_secret_key(appid)
Get secret_key of WeChat component application.
refresh_access_token(appid, authorizer_appid, access_token)
Refresh authorizer's access_token for WeChat component application.
Example
refresh_access_token(
appid,
authorizer_appid,
access_token
)
refresh_component_access_token(appid, component_access_token)
Refresh access_token of WeChat component application.
Example
refresh_component_access_token(
appid,
component_access_token
)
save_access_token(appid, authorizer_appid, access_token, refresh_token)
Save authorizer's access_token for WeChat component application.
Example
save_access_token(
appid,
authorizer_appid,
access_token,
refresh_token,
)
save_component_access_token(appid, component_access_token)
Save access_token of WeChat component application.
Example
save_component_access_token(
appid,
component_access_token
)
save_component_verify_ticket(appid, component_verify_ticket)
Save component_verify_ticket of WeChat component application.
Example
save_component_verify_ticket(appid, component_verify_ticket)