我创建并分发了一个区块链工作台项目。我可以访问 Azure Blockchain Workbench 客户端网站,在那里我可以创建合同、采取行动等。
我尝试开发一个简单的程序来使用 Azure Blockchain Workbench REST API 与我自己的应用程序与区块链进行交互。
在调用任何 API 函数之前,我得到了身份验证令牌(我希望它是正确的,因为我得到了令牌的值)
如果现在我尝试调用 API 函数“ https://myblockchain-xyz-api.azurewebsites.net/api/v2/users ”,那么我会得到用户列表。
但是,如果现在我尝试调用有关区块链应用程序的任何其他函数,例如“/api/v2/applications”,我会得到返回码 204“无内容”。
如果我尝试调用例如“/api/v2/applications/2/workflows”,那么我会得到 404“未找到”
在 API 调用之后:
Dim MyOauthToken As String =
Utilities.BlockchainAuthentication.GetAuthenticationToken().Result
Dim MyHttpClient As New HttpClient()
MyHttpClient.DefaultRequestHeaders.Authorization = New AuthenticationHeaderValue("Bearer", MyOauthToken)
'--------------------------------------------------------
'Force security protocol
ServicePointManager.SecurityProtocol = SecurityProtocolType.Ssl3 Or SecurityProtocolType.Tls Or SecurityProtocolType.Tls11 Or SecurityProtocolType.Tls12
'---------------------------------------------------------
'Get list of applications
Dim MyServiceUriString As String = "https://myblockchain-xyz-api.azurewebsites.net/api/v2/users/applications"
Dim MyResponse As Task(Of HttpResponseMessage) = MyHttpClient.GetAsync(MyServiceUriString)
MyResponse.Wait()
“应用程序”功能的结果是 204“无内容”如果我执行相同的调用“.../api/v2/users”它可以工作并且我得到所有用户。
有人可以帮忙吗?
我试图打电话给“../users/me”看看会发生什么,我得到以下结果(我不知道这是否有帮助):
{"currentUser":{"userID":7,"externalID":"1r67sf88-5b49-47da-a27a-79g3gg345","firstName":null,"lastName":"","emailAddress":null,"userChainMappings" :[{"userChainMappingID":5,"userID":7,"connectionID":1,"chainIdentifier":"0x32cfcf169813364563456348c99b9","chainBalance":null}]},"capabilities":{"canUploadApplication":false," canUploadContractCode":false,"canModifyRoleAssignments":false,"canProvisionUser":false,"canUpgradeWorkbench":false}}