에러 메시지
<p style="margin: 0px 0px 1.2em !important;" data-ke-size="size16">══╡ EXCEPTION CAUGHT BY IMAGE RESOURCE SERVICE ╞════════════════════════════════════════════════════ The following NetworkImageLoadException was thrown resolving an image codec: HTTP request failed, statusCode: 201, <a href="http://106.10.50.184:9090/em/cmm/getImage?fileKey=MStSM0c7%2BRdjJeR8lKz8K4H01DdQieUWo%2B7WnwAyQVSQSkd7ICdbfbH74iu7opUa0yKKTVSIkYHlZ8QW341GnM33mhYwhzVSUIvNWm1acIddWasMo5cVK3PEvGTeuhhC7F6FQhWqKxUb7FQq8ktkrg%2BktstPUIvwWazHsoMFWGE%3D&auth=XyNUQgx5UyiyLhGuV2v4" shape="rect">http://106.10.50.184:9090/em/cmm/getImage?fileKey=MStSM0c7%2BRdjJeR8lKz8K4H01DdQieUWo%2B7WnwAyQVSQSkd7ICdbfbH74iu7opUa0yKKTVSIkYHlZ8QW341GnM33mhYwhzVSUIvNWm1acIddWasMo5cVK3PEvGTeuhhC7F6FQhWqKxUb7FQq8ktkrg%2BktstPUIvwWazHsoMFWGE%3D&auth=XyNUQgx5UyiyLhGuV2v4</a> When the exception was thrown, this was the stack: #0 NetworkImage._loadAsync (package:flutter/src/painting/_network_image_io.dart:100:9) #1 NetworkImage.load (package:flutter/src/painting/_network_image_io.dart:51:14) #2 ImageProvider.resolveStreamForKey. (package:flutter/src/painting/image_provider.dart:505:13) #3 ImageCache.putIfAbsent (package:flutter/src/painting/image_cache.dart:360:22) #4 ImageProvider.resolveStreamForKey (package:flutter/src/painting/image_provider.dart:503:80) #5 ScrollAwareImageProvider.resolveStreamForKey (package:flutter/src/widgets/scroll_aware_image_provider.dart:108:19) #6 ImageProvider.resolve. (package:flutter/src/painting/image_provider.dart:334:9) #7 ImageProvider._createErrorHandlerAndKey.. (package:flutter/src/painting/image_provider.dart:464:26) #8 SynchronousFuture.then (package:flutter/src/foundation/synchronous_future.dart:43:29) #9 ImageProvider._createErrorHandlerAndKey. (package:flutter/src/painting/image_provider.dart:461:11) #13 ImageProvider._createErrorHandlerAndKey (package:flutter/src/painting/image_provider.dart:453:16) #14 ImageProvider.resolve (package:flutter/src/painting/image_provider.dart:331:5) #15 _ImageState._resolveImage (package:flutter/src/widgets/image.dart:1116:16) #16 _ImageState.didChangeDependencies (package:flutter/src/widgets/image.dart:1069:5) #17 StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:4705:12) #18 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4520:5) #19 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3490:14) #20 MultiChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5991:32) … Normal element mounting (10 frames) #30 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3490:14) #31 MultiChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5991:32) … Normal element mounting (4 frames) #35 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3490:14) #36 MultiChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5991:32) … Normal element mounting (105 frames) #141 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3490:14) #142 Element.updateChild (package:flutter/src/widgets/framework.dart:3258:18) #143 SliverMultiBoxAdaptorElement.updateChild (package:flutter/src/widgets/sliver.dart:1164:36) #144 SliverMultiBoxAdaptorElement.createChild. (package:flutter/src/widgets/sliver.dart:1149:20) #145 BuildOwner.buildScope (package:flutter/src/widgets/framework.dart:2620:19) #146 SliverMultiBoxAdaptorElement.createChild (package:flutter/src/widgets/sliver.dart:1142:11) #147 RenderSliverMultiBoxAdaptor._createOrObtainChild. (package:flutter/src/rendering/sliver_multi_box_adaptor.dart:356:23) #148 RenderObject.invokeLayoutCallback. (package:flutter/src/rendering/object.dart:1868:58) #149 PipelineOwner._enableMutationsToDirtySubtrees (package:flutter/src/rendering/object.dart:920:15) #150 RenderObject.invokeLayoutCallback (package:flutter/src/rendering/object.dart:1868:13) #151 RenderSliverMultiBoxAdaptor._createOrObtainChild (package:flutter/src/rendering/sliver_multi_box_adaptor.dart:345:5) #152 RenderSliverMultiBoxAdaptor.addInitialChild (package:flutter/src/rendering/sliver_multi_box_adaptor.dart:429:5) #153 RenderSliverGrid.performLayout (package:flutter/src/rendering/sliver_grid.dart:550:12) #154 RenderObject.layout (package:flutter/src/rendering/object.dart:1769:7) #155 RenderSliverEdgeInsetsPadding.performLayout (package:flutter/src/rendering/sliver_padding.dart:137:11) #156 RenderSliverPadding.performLayout (package:flutter/src/rendering/sliver_padding.dart:377:11) #157 RenderObject.layout (package:flutter/src/rendering/object.dart:1769:7) #158 RenderViewportBase.layoutChildSequence (package:flutter/src/rendering/viewport.dart:471:13) #159 RenderViewport._attemptLayout (package:flutter/src/rendering/viewport.dart:1465:12) #160 RenderViewport.performLayout (package:flutter/src/rendering/viewport.dart:1374:20) #161 RenderObject.layout (package:flutter/src/rendering/object.dart:1769:7) #162 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:115:13) #163 RenderObject.layout (package:flutter/src/rendering/object.dart:1769:7) #164 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:115:13) #165 RenderObject.layout (package:flutter/src/rendering/object.dart:1769:7) #166 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:115:13) #167 RenderObject.layout (package:flutter/src/rendering/object.dart:1769:7) #168 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:115:13) #169 RenderObject.layout (package:flutter/src/rendering/object.dart:1769:7) #170 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:115:13) #171 RenderObject.layout (package:flutter/src/rendering/object.dart:1769:7) #172 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:115:13) #173 RenderObject.layout (package:flutter/src/rendering/object.dart:1769:7) #174 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:115:13) #175 RenderObject.layout (package:flutter/src/rendering/object.dart:1769:7) #176 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:115:13) #177 RenderObject.layout (package:flutter/src/rendering/object.dart:1769:7) #178 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:115:13) #179 RenderObject.layout (package:flutter/src/rendering/object.dart:1769:7) #180 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:115:13) #181 RenderObject.layout (package:flutter/src/rendering/object.dart:1769:7) #182 RenderFlex.performLayout (package:flutter/src/rendering/flex.dart:827:17) #183 RenderObject.layout (package:flutter/src/rendering/object.dart:1769:7) #184 RenderPadding.performLayout (package:flutter/src/rendering/shifted_box.dart:209:11) #185 RenderObject.layout (package:flutter/src/rendering/object.dart:1769:7) #186 RenderFlex.performLayout (package:flutter/src/rendering/flex.dart:827:17) #187 RenderObject.layout (package:flutter/src/rendering/object.dart:1769:7) #188 RenderFlex.performLayout (package:flutter/src/rendering/flex.dart:827:17) #189 RenderObject._layoutWithoutResize (package:flutter/src/rendering/object.dart:1632:7) #190 PipelineOwner.flushLayout (package:flutter/src/rendering/object.dart:889:18) #191 RendererBinding.drawFrame (package:flutter/src/rendering/binding.dart:404:19) #192 WidgetsBinding.drawFrame (package:flutter/src/widgets/binding.dart:867:13) #193 RendererBinding._handlePersistentFrameCallback (package:flutter/src/rendering/binding.dart:286:5) #194 SchedulerBinding._invokeFrameCallback (package:flutter/src/scheduler/binding.dart:1117:15) #195 SchedulerBinding.handleDrawFrame (package:flutter/src/scheduler/binding.dart:1056:9) #196 SchedulerBinding._handleDrawFrame (package:flutter/src/scheduler/binding.dart:972:5) #200 _invoke (dart:ui/hooks.dart:253:10) #201 _drawFrame (dart:ui/hooks.dart:211:3) (elided 6 frames from dart:async) Image provider: NetworkImage(“<a href="http://106.10.50.184:9090/em/cmm/getImage?fileKey=MStSM0c7%2BRdjJeR8lKz8K4H01DdQieUWo%2B7WnwAyQVSQSkd7ICdbfbH74iu7opUa0yKKTVSIkYHlZ8QW341GnM33mhYwhzVSUIvNWm1acIddWasMo5cVK3PEvGTeuhhC7F6FQhWqKxUb7FQq8ktkrg%2BktstPUIvwWazHsoMFWGE%3D&auth=XyNUQgx5UyiyLhGuV2v4" shape="rect">http://106.10.50.184:9090/em/cmm/getImage?fileKey=MStSM0c7%2BRdjJeR8lKz8K4H01DdQieUWo%2B7WnwAyQVSQSkd7ICdbfbH74iu7opUa0yKKTVSIkYHlZ8QW341GnM33mhYwhzVSUIvNWm1acIddWasMo5cVK3PEvGTeuhhC7F6FQhWqKxUb7FQq8ktkrg%2BktstPUIvwWazHsoMFWGE%3D&auth=XyNUQgx5UyiyLhGuV2v4</a>“, scale: 1.0) Image key: NetworkImage(“<a href="http://106.10.50.184:9090/em/cmm/getImage?fileKey=MStSM0c7%2BRdjJeR8lKz8K4H01DdQieUWo%2B7WnwAyQVSQSkd7ICdbfbH74iu7opUa0yKKTVSIkYHlZ8QW341GnM33mhYwhzVSUIvNWm1acIddWasMo5cVK3PEvGTeuhhC7F6FQhWqKxUb7FQq8ktkrg%2BktstPUIvwWazHsoMFWGE%3D&auth=XyNUQgx5UyiyLhGuV2v4" shape="rect">http://106.10.50.184:9090/em/cmm/getImage?fileKey=MStSM0c7%2BRdjJeR8lKz8K4H01DdQieUWo%2B7WnwAyQVSQSkd7ICdbfbH74iu7opUa0yKKTVSIkYHlZ8QW341GnM33mhYwhzVSUIvNWm1acIddWasMo5cVK3PEvGTeuhhC7F6FQhWqKxUb7FQq8ktkrg%2BktstPUIvwWazHsoMFWGE%3D&auth=XyNUQgx5UyiyLhGuV2v4</a>“, scale: 1.0)
이미지 로드시 HttpStatus.ok인 상태만 이미지를 호출한다. HttpStatus.ok는 200 이라서 해당 url이 통신이 성공한 경우만 이미지 호출이 된다.
url로 이미지를 로드할 경우 정상적으로 이미지가 보이지만 201의 상태코드라서 이미지 호출이 에러 예외 상황으로 된다.
기존 Image.network는 이미지를 불러오지 못한다.
Future<Uint8List> urlLoadByte(String imageUrl) async {
String url = imageUrl + '&auth=' + _auth;
http.Response response = await http.get(url);
return response.bodyBytes;
}
Widget loadImage(String url) {
Uint8List imageBytes;
return FutureBuilder(
future: urlLoadByte(url),
builder: (BuildContext context, AsyncSnapshot snapshot) {
if(snapshot.hasData) {
imageBytes = snapshot.data;
return Image.memory(imageBytes);
} else if(snapshot.hasError) {
print(snapshot.hasError);
}
return Text('No Image');
},
);
}
Http 통신으로 해당 url의 response에서 데이터 부분을 bodybytes로 가지고와서 byte로 Image.memory에 넣었다.
[Flutter] VlcPlayer가 Build시 앱 팅김현상 (0) | 2021.07.09 |
---|---|
[Flutter] setState() or markNeedsBuild() called during build. (0) | 2021.06.21 |
[Java] SSL 접속 시 에러 (No subject alternative names matching IP address 192.168.0.10 found) (3) | 2021.03.08 |
댓글 영역