我正在使用XCode 8.3和Swift 3构建Safari App扩展,遵循Safari App Extension编程指南.扩展程序包括单击扩展程序工具栏项时显示的弹出窗口.弹出窗口视图包含一些链接到用户可以执行的操作的按钮.
我想在执行操作后单击其中一个按钮来关闭弹出窗口.默认情况下,单击弹出窗口外的任何位置会关闭它,但我无法在指南或文档中找到任何其他方法来关闭弹出窗口.
我知道NSPopover有一个performClose方法,但似乎没有办法从扩展中访问popover本身:app扩展只允许你提供一个SFSafariExtensionViewController,其内容神奇地出现在popover中.
我也试过使用这个StackOverflow答案中dismissViewController所描述的,但在我的视图中控制器总是为零,并且只是使用消息崩溃扩展:self.presentingself.dismissViewController(self)
dismissViewController:: Error: maybe this view controller was not presented?.
最后,我注意到一个相关的问题,关于以编程方式打开工具栏项目popover在过去的6个月里没有得到答复.这让我怀疑苹果可能只是严格限制弹出窗口的打开和关闭方式.即使是这种情况,也很高兴知道这些限制是什么.
我正在尝试使用邮递员通过 keycloak REST API 在我的 springboot 领域中创建一个新客户端,但我收到一个未知错误作为响应。
post方法中的URL是
localhost:8180/auth/admin/realms/springboot/clients
Run Code Online (Sandbox Code Playgroud)
标头包括
content-type - application/json
authorization - bearer <access token...>
Run Code Online (Sandbox Code Playgroud)
json 正文是
{
"id":"1",
"clientId":"zzzzz",
"name":"aaaaa",
"description":"bbbbb",
"redirectUris":[ "\\" ],
"enabled":"true"
}
Run Code Online (Sandbox Code Playgroud)
我得到的回应是403 : unknown error.