遇到405错误如何删除collectionview记录?

How to delete collectionview records if encountered error 405?

我有一个集合视图,我想删除列表中的 1 条记录。当我点击删除按钮时,我使用下面的代码:

NSString *wishlistID = @"5";
NSString *url_string = [NSString stringWithFormat: @"http://api.samplewebsite.com/api/product/wishlist_delete/%@",wishlistID];
[self.manager DELETE:url_string parameters:nil success:^(NSURLSessionDataTask *task, id responseObject) {

[self.collectionView reloadData];
}
failure:^(NSURLSessionDataTask *task, NSError *error) {

    UIAlertController *alertVC = [UIAlertController alertControllerWithTitle:@"Please try again"
                                                                     message:[error localizedDescription]
                                                              preferredStyle:UIAlertControllerStyleAlert];

    UIAlertAction *okAction = [UIAlertAction actionWithTitle:@"Ok"
                                                       style:UIAlertActionStyleCancel
                                                     handler:nil];

    [alertVC addAction:okAction];

    [self presentViewController:alertVC animated:YES completion:nil];
}];

我遇到如下错误:

Request failed: Method not allowed (405).

P.S.: 经测试可以使用 POSTMAN 删除记录。

你得到HTTP error code 405,这意味着你的服务器不允许你的请求。

看来您的服务器不允许您删除 http://api.samplewebsite.com/api/product/wishlist_delete/5 资源。

该错误与您的 collection 视图无关,也与 AFNetworking(仅传递 DELETE 请求及其回复)无关;我建议你换个标题。

我在服务器端使用如下代码解决了我的问题 > web.config:-

<system.webServer>
    <modules>
      <remove name="WebDAVModule" />
    </modules>
    <handlers>
      <remove name="WebDAV" /> 
    </handlers>
</system.webServer>