2016-09-28 18 views
1

ローカルディレクトリからSharePoint上のドキュメントライブラリにファイル(PDF)をアップロードしようとしています。私は、変更をフォルダを監視し、PDFストリームをパイプするタスクを実行するGulpビルドシステムを用意しています。gulp-spsavegulp spsaveを使用してREST API経由でSharePointにファイルをアップロード

gulp-spsaveは、私は自分の信用証明書、URL、アップロードフォルダを提供することができ、残りの部分は実行します。

しかし、私は404を手に入れています。私はSharePointを使い慣れていないし、実際にはURL構造を理解していないので、私はプラグインに正しい情報を提供していないと推測しています。

これは(DST命名された)ドキュメントライブラリへのURLです:

https://{subdomain}.{customdomain}.com/depts/indirectsales/DST/Forms/AllItems.aspx

そして、これは私の一気の作業です:私はSITEURLの他の組み合わせを試してみました

gulp.task('upload', function() { 

    var catalog = paths.output + 'catalog.pdf'; 

    return gulp.src(catalog) 
     .pipe(spsave({ 
      username: '{user}', 
      password: '{pass}', 
      siteUrl: 'https://{subdomain}.{customdomain}.com/depts/indirectsales/', 
      folder: 'DST' 
     })); 
}); 

と以下のような無用のフォルダ:

siteUrl: 'https://{subdomain}.{customdomain}.com', 
folder: 'depts/indirectsales/DST' 

ドキュメントライブラリのURLが指定されている場合、siteUrlとフォルダの正しい文字列を確認しますか?

EDIT:私は社内Sharepoint 2010のインストールに接続しようとしているようですが、spsaveは2013/2016とSPOでのみ動作します。誰もが、RESTを使用してSP 2010でドキュメントライブラリにファイルをアップロードする方法を知っていますか?

答えて

0

標準のREST要求で問題が発生したのは、SharePointとNTLMで認証されていないためです。ノード内のモジュールでこれを行うことができました。

httpntlm.post({ 
    url: 'http://domain.com/site/_vti_bin/copy.asmx', 
    headers: { 
     'SOAPAction': 'http://schemas.microsoft.com/sharepoint/soap/CopyIntoItems', 
     'Content-Type': 'text/xml; charset="utf-8"' 
    }, 
    username: 'user', 
    password: 'pass', 
    body: soapEnv, 
}, function(err, response) { 
    //callback 
} 
関連する問題