使用ng2-file-upload上传文件时出现404(Not Found)错误

时间:2017-09-11 13:39:37

标签: file-upload angular2-routing ng2-file-upload

我正在使用 ng2-file-upload 将文件上传到我的angular2应用程序。问题是,当我点击上传'按钮,我收到404(未找到)错误,这意味着找不到我为上传设置的目录。 这是我的组成部分:

Fatal Exception: java.lang.IllegalStateException: No activity
   at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:1058)
   at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:1053)
   at android.app.FragmentManagerImpl.dispatchActivityCreated(FragmentManager.java:1862)
   at android.app.Fragment.performActivityCreated(Fragment.java:1724)
   at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:915)
   at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:1071)
   at android.app.BackStackRecord.run(BackStackRecord.java:684)
   at android.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1456)
   at android.app.FragmentManagerImpl$1.run(FragmentManager.java:444)
   at android.os.Handler.handleCallback(Handler.java:733)
   at android.os.Handler.dispatchMessage(Handler.java:95)
   at android.os.Looper.loop(Looper.java:136)
   at android.app.ActivityThread.main(ActivityThread.java:5398)
   at java.lang.reflect.Method.invokeNative(Method.java)
   at java.lang.reflect.Method.invoke(Method.java:515)
   at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:864)
   at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:680)
   at dalvik.system.NativeStart.main(NativeStart.java)
Show all 74 Threads

我在/ src / app / uploads /创建了一个用于保存上传文件的目录。还有什么我需要做的才能工作,或者FileUploader应该做剩下的工作吗? 我相信我得到的错误是因为我使用Angular2应用程序的路由器,并且路由器中没有定义该URL(http://localhost:4200/src/app/uploads/)。

有人可以提供建议吗? 非常感谢!

1 个答案:

答案 0 :(得分:1)

常量URL应替换为将接收和处理上传文件的后端应用程序(URL:端口)。

如果您使用的是file-catcher.js示例,则正确的应为:

const URL = 'http://localhost:3000/api/

---- x ----

demo \ src \ app \ components \ file-upload 文件夹中有3个文件:

simple-demo.html 
simple-demo.ts 
file-catcher.js 

file-catcher.js 是后端的示例代码,用于处理您的上传请求。要使它运行,您需要Node.js.所以基本上,你必须打开一个终端,转到这个文件夹并执行 node file-catcher.js (第一个make shure使用npm安装所有依赖项)。这将创建一个在端口3000运行的服务器,该服务器将接收Angular上传请求并保存文件(在这种情况下,在文件夹上传 - make shure以确定对其的正确权限)。

这里有一步一步我希望能帮到你: https://www.thepolyglotdeveloper.com/2016/02/upload-files-to-node-js-using-angular-2/