0

我在我的应用程序中使用 sthttprequest 和 php 进行网络服务器通信。这是一个示例请求:

-(void)GetSomething:(NSString*)Username :(NSString*)Password {


__block STHTTPRequest *up = [STHTTPRequest requestWithURLString:[NSString stringWithFormat:@"%@%@",PATHSERVER,@"getsomething.php"]];

up.POSTDictionary = @{@"username":Username,@"password":Password};

up.completionBlock = ^(NSDictionary *headers, NSString *body) {


       //my result data




};

up.errorBlock = ^(NSError *error) {
    NSLog(@"-error description and error code- %@", [error localizedDescription]);

};

[up startAsynchronous];

}

当发生某种情况时,我想在我的 php 页面中输出一个错误,以在 sthttprequest 错误块中显示警报:

up.errorBlock = ^(NSError *error) {
NSLog(@"-error description and error code- %@", [error localizedDescription]);

};

是否可以从 php 页面强制自定义代码错误以实现此行为?就像是:

<?php  echo $custom_error_code; ?>

up.errorBlock = ^(NSError *error) {

  if (error.code==1300){
      //this is the code i have set in php
  }

}; 

我不想要一个已经分配的错误,比如 503,500 等......因为当它没有意义时,我冒着向用户显示警报的风险。出于实际原因,我想在 completionBlock 中使用块错误而不是简单的字符串。

编辑

我在 stackoverflow 中找到了这个答案 我们可以创建自定义 HTTP 状态代码吗?

所以我可以创建尚未分配数字的自定义错误代码,我必须尊重的是类号 4xx 或 5xx。现在我的问题是从 php 页面输出自定义错误代码,如“475”。方法

header_status(475);

不适合我。

4

1 回答 1

0

这个答案https://stackoverflow.com/a/23190950/3057259给了我正确的方法来将自定义错误代码发布到正确识别它的 sthttprequest。

于 2015-02-20T08:22:00.207 回答