1# Upload and Download Subsystem Changelog
2
3Compared with OpenHarmony 4.1.2.3, OpenHarmony 4.0 has the following API changes in the request subsystem.
4
5## cl.request.1 Removal of Error Code 21900005 task mode error
6
7In earlier versions, the **on('progress')**, **on('complete')**, **on('failed')**, **off('progress')**, **off('complete')**, **off('failed')**, **pause**, and **resume** APIs take effect only for foreground tasks. In this version, they work for both foreground and background tasks. This means that, calling these APIs will no longer return the error code **21900005 task mode error**.
8
9**Change Impact**
10
11Applications developed based on earlier versions may need to be adapted to the changed error codes. Otherwise, the service logic may be affected.
12
13**Key API/Component Changes**
14
15| Module         | Class          | Method/Attribute/Enum/Constant                                                                                                          | Change Type     |
16|--------------|--------------|--------------------------------------------------------------------------------------------------|--------------|
17| ohos.request | Task      | on(event: 'progress', callback: (progress: Progress) => void): void;                                         | Changed|
18| ohos.request | Task      | off(event: 'progress', callback?: (progress: Progress) => void): void;                                       | Changed|
19| ohos.request | Task      | on(event: 'completed', callback: (progress: Progress) => void): void;                                      | Changed|
20| ohos.request | Task      | off(event: 'completed', callback?: (progress: Progress) => void): void;                                    | Changed|
21| ohos.request | Task      | on(event: 'failed', callback: (progress: Progress) => void): void;                                              | Changed|
22| ohos.request | Task      | off(event: 'failed', callback?: (progress: Progress) => void): void;                                            | Changed|
23| ohos.request | Task      | pause(callback: AsyncCallback<void>): void;                                                                         | Changed|
24| ohos.request | Task      | pause(): Promise<void>;                                                                                                       | Changed|
25| ohos.request | Task      | resume(callback: AsyncCallback<void>): void;                                                                       | Changed|
26| ohos.request | Task      | resume(): Promise<void>;                                                                                                     | Changed|
27
28**Adaptation Guide**
29
30Adapt the code based on the error code changes.
31