Как опубликовать JSON из JavaScript? - PullRequest
0 голосов
/ 29 октября 2010

Я хочу отправить строку json с веб-страницы html, используя javascript, в WCF. Есть ли хороший урок для этого?* дайте мне знать, где я должен опубликовать его в определенном сервисе ... что-то вроде указания URL

Ответы [ 2 ]

2 голосов
/ 29 октября 2010

Я думаю, что вы смешиваете Java с JavaScript. Несмотря на их имена, они никак не связаны друг с другом. Насколько я знаю, JSONStringer не существует ни в javascript, ни в jquery. JSON означает JavaScript Object Notation, так что это означает, что он очень родной для языков javscript (с некоторыми незначительными отличиями). Так как это так близко, очень легко разобрать Json в javascript.

Кроме того, javascript - это язык с динамической типизацией, поэтому предоставление типа, как вы это обычно делали, приводит к ошибке синтаксического анализа. Используйте Firebug или консоль Chrome, когда ваш код не работает. Вы увидите ошибку, когда браузер не смог разобрать ваш код.

для сериализации, которую вы, вероятно, хотите использовать (в браузере, поддерживающем JSON и / или с json2.js )

var dat = JSON.stringify({
  cno: 2000,
  cname: 'HI',
  cmail: 'HI',
  cphno: '9292',
  cmailtype: 'home',
  cphnotype: 'Office',
  clientno: 1
});

URL идет туда, куда вы положили frm.attr("action"). Я не вижу, где вы создаете объект frm. Я не думаю, что вам нужен объект JQuery для этого, document.getElementById поддерживается во всех основных браузерах, и я уверен, что он тоже быстрее.

var myForm = document.getElementById('myformid');
$.post( 
  myForm.action, 
  dat, 
  function(data) { 
    alert('Response: ' + data); 
  } 
); 

Кроме того, насколько я знаю, постданные должны быть в формате параметров запроса, поэтому, возможно, вам нужно добавить что-то вроде

'myData=' + dat,

Копирование / вставка кода из Интернета позволяет быстро начать работу, но многие программисты на JavaScript забывают, что сначала вам нужно понять язык. Не просто слепо копируйте код, пытайтесь понять, что происходит. Попробуйте сначала решить проблемы без библиотеки и выясните, где вам на самом деле нужна библиотека.

0 голосов
/ 29 октября 2010

http://www.learn -ajax-tutorial.com / PassingData.cfm # JSON

  1. Получить json.js.
  2. Кодировать массив или объект вjson.
  3. Выполните Ajax.Request, чтобы опубликовать строку json.Simplez!

Это почти все, что вам нужно, не уверен насчет WCF, но если это правильный веб-сервис, то все, что вам нужно, - это дескриптор для определения имен функций и их параметров.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...