我收到HTTP失败响应,我不明白为什么原因,因为API正在工作,我已经检查了swagger / curl,它不是我的第一个服务,其他所有都工作正常
角服务:
export class TicketPhotosService {
constructor(private http: HttpClient) { }
getTicketPhotos(iInstanceID: string): Observable<TicketPhoto[]> {
return this.http.get<TicketPhoto[]>(`${environment.url}api/v1/ViewTicketPhotos/GetPhotos`,
{ withCredentials: true, responseType: 'json',
params: {
iInstanceID
}})
.pipe(
catchError((err, caught) => {
throw ErrorResponseUtil.build(err);
})
);
}
Conrtoller:
[Route("api/v1/[controller]")]
[ApiController]
public class ViewTicketPhotosConrtoller : BTSWebVCCAdminBaseController
{
IBALVccDefinitions _balVccDefinition;
private IHostingEnvironment _hostingEnvironment;
public ViewTicketPhotosConrtoller(IHttpContextAccessor contextAccessor, ISetting setting, ISecurity security, ILogging logging, IBal bal, IBalEmployee balEmployee, IBALVccDefinitions balVccDefinition, IWeb web, IDotNet dotNet, IDistributedCache distributedCache, ICache cache, IText text, IViewRender viewRenderService, IHostingEnvironment hostingEnvironment)
: base(contextAccessor, setting, security, logging, bal, balEmployee, web, dotNet, distributedCache, cache, text, viewRenderService, hostingEnvironment)
{
_balVccDefinition = balVccDefinition;
_hostingEnvironment = hostingEnvironment;
}
[HttpGet("GetPhotos")]
[BTSFilter(useMaintenanceFilter: true, useAuthentificationFilter: true, useCultureFilter: true, useLogAccessFilter: true, useSessionExpiredFilter: true, usePermissionApplicationFilter: false, usePermissionOptionFilter: true)]
[EnableCors]
public async Task<IActionResult> Get(string iInstanceID)
{
try
{
return Ok(GetImagePath(_balVccDefinition.GetImagesByQuestionnaireInstanceID(iInstanceID)));
}
catch (Exception ex)
{
var error = Logging.LogErrorWeb(ex, HttpContext);
return StatusCode(StatusCodes.Status500InternalServerError, new { error, message = "" });
}
}
在您的Swagger请求中,您有.../ViewTicketPhotosConrtoller/...
,而Angular服务只是.../ViewTicketPhotos/...