问题
I want to delete an Openfire user which is currently connected using XMPP.
I use the below code for deleting the user:
- (void)DeleteAccountFromOpenfire
{
NSXMLElement *query = [NSXMLElement elementWithName:@"query" xmlns:@"'jabber:iq:register'"];
[query addChild:[NSXMLElement elementWithName:@"remove"]];
XMPPIQ *iq = [XMPPIQ iqWithType:@"set" elementID:@"unreg1"];
[iq addChild:query];
[[self xmppStream] sendElement:iq];
}
But I get a not-authorized error from the server. How could I avoid that?
回答1:
Following is the solution to remove the registered user from openfire account
NSXMLElement *query = [NSXMLElement elementWithName:@"query" xmlns:@"jabber:iq:register"];
[query addChild:[NSXMLElement elementWithName:@"remove"]];
NSXMLElement *iq = [NSXMLElement elementWithName:@"iq"];
[iq addAttributeWithName:@"type" stringValue:@"set"];
[iq addAttributeWithName:@"id" stringValue:@"unreg1"];
[iq addChild:query];
[[self xmppStream] sendElement:iq];
来源:https://stackoverflow.com/questions/24862569/xmppframework-not-authorized-error-upon-deleting-a-registered-user-account