0
我正在嘗試使用Live SDK和Azure移動服務在我的C++商店應用中構建單一登錄功能(類似於.NET應用程序描述的內容here)。在C++ Windows應用商店應用中使用Microsoft帳戶和Azure移動服務的單點登錄
我正在使用Azure Mobile C++ Library和live_connect.h wrapper。下面是我的代碼如下所示:
void MapQuizVC12::StartPage::LoginIntoLive()
{
LiveClient->login(L"wl.basic wl.signin").then([this](bool isLoggedIn)
{
LiveClient->get(L"me").then([this](json::value v)
{
auto token = json::value::object();
token[L"authenticationToken"] = json::value::string(LiveClient->authentication_token());
AzureMobileHelper::mapquizMobileService::GetClient()
.login(azure::mobile::authentication_provider::microsoft, token)
.then([](task<azure::mobile::user> user)
{
try
{
user.wait();
}
catch (std::exception e)
{
}
}, concurrency::task_continuation_context::use_current());
}, concurrency::task_continuation_context::use_current());
}, concurrency::task_continuation_context::use_current());
}
的現場認證似乎很好地工作,但是當我使用的身份驗證令牌登錄到謨,我得到上面的catch塊以下異常:
經過一番玩弄。我認爲由C#SDK返回的Live authToken與C++ API返回的不同。 Azure Mobile服務實際上期望C#SDK返回的內容。我已發佈有關此問題here。
我在做什麼錯?
我還沒有使用C++,但LiveClient-> authenticationToken()'的價值是什麼? – carlosfigueira