elixir_wechat v0.1.0 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 delete_access_token(appid, authorizer_appid, access_token) do
# Delete 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 delete_component_access_token(appid, component_access_token) do
# Delete 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
Delete authorizer's access_token for WeChat component application.
Delete access_token of WeChat component application.
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.
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
delete_access_token(appid, authorizer_appid, access_token)
Delete authorizer's access_token for WeChat component application.
Example
delete_access_token(
appid,
authorizer_appid,
access_token
)
delete_component_access_token(appid, component_access_token)
Delete access_token of WeChat component application.
Example
delete_component_access_token(
appid,
component_access_token
)
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.
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)